我有一個代碼,我想從圖像中獲取流並將內存流轉換爲字符串數組並存儲在變量中。但我的問題是我也想從字符串變量中獲取圖像並在圖片框上繪製。如何將內存流轉換爲字符串數組,反之亦然
如果我使用這個像 PictureBox1.Image = image.FromStream(memoryStream) 我可以在圖片框上打印圖片。但這不是我的需要。我只想從文件中獲取圖像流並將其轉換爲文本並將其存儲爲某個字符串變量,然後再次使用字符串變量並將其轉換爲流以在圖片框上打印圖像。
這裏是我的代碼。(VB快遞2008)在您發佈的方式
Public Function ImageConversion(ByVal image As System.Drawing.Image) As String
If image Is Nothing Then Return ""
Dim memoryStream As System.IO.MemoryStream = New System.IO.MemoryStream
image.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Gif)
Dim value As String = ""
For intCnt As Integer = 0 To memoryStream.ToArray.Length - 1
value = value & memoryStream.ToArray(intCnt) & " "
Next
Dim strAsBytes() As Byte = New System.Text.UTF8Encoding().GetBytes(value)
Dim ms As New System.IO.MemoryStream(strAsBytes)
PictureBox1.Image = image.FromStream(ms)
Return value
End Function
我只是好奇 - 爲什麼你需要轉換/圖像加載到一個內存流,以便在圖片框中顯示它,不能直接將圖像保存到文件系統,然後使用標準方法加載它? – pasty
感謝您的寶貴意見。但我知道標準方法。我只想在Rich text Box中加載字符串變量。我在哪裏得到像 「71 70 56 255 240 15 ....」(取決於圖片)rgb值,我想手動更改該值僅用於實驗目的並重新打包到圖像中,nd我希望看到更改。 :) –