我开始编写程序,它接受文本并将其编码为图像。 我开始实现检查每个字符然后它将颜色写入位图。
该程序运行正常,但是当我实现Select case
时,程序在选择的情况下停止工作,但不会抛出异常。
事情是MsgBox("done")
永远不会被执行。
Dim bitmap As New Bitmap("C:\abcimage\templ.jpg")
Dim input = InputBox("What do you want to encode into image?")
Dim characters As Array
characters = input.ToCharArray
Dim Width As Int32 = bitmap.Width
Dim Height As Int32 = bitmap.Height
Dim textcord As Integer = 0
For y As Int32 = 0 To Height - 1
For x As Int32 = 0 To Width - 1
If textcord > Len(characters) Then
bitmap.SetPixel(x, y, Color.Black)
Else
Select Case characters(textcord)
Case "a" Or "A"
bitmap.SetPixel(x, y, Color.FromArgb(255, 255, 128, 128))
End Select
End If
textcord += 1
Next
Next
MsgBox("Done")
bitmap.Save("C:\abcimage\outputs\asdf.jpg")
编辑:我甚至尝试了If
,但这也不起作用。
答案 0 :(得分:3)
此:
Case "a" Or "A"
应该是这样的:
Case "a", "A"
如果您阅读了Select Case
的文档,那么您会看到它。
答案 1 :(得分:0)
很抱歉今天超频你的大脑,但问题在于字符串的索引,我忘了从0开始。