2010-03-03 2 views
2

что является самым простым способом перевести растровое изображение & Png to string И НАЗАД СНОВА. Я пытался сделать некоторые сбережения через потоки памяти и такие, но я не могу заставить его работать!Простой способ преобразования растрового изображения и изображения Png в текст и наоборот

Я не понял, Я хочу, чтобы я мог перевести класс Bitmap с изображением в него .. в системную строку. оттуда я хочу немного поменять свою строку, а затем перевести ее обратно в растровое изображение, которое будет отображаться в PictureBox.

+1

«Переводите в строку», вы говорите о кодировании a la Base64 или OCRing текст на изображении? – itowlson

+0

Вам нужна конвертация формата _binary_ в какой-то _text_ рода (например, подходящий для использования в различных интернет-протоколах), или же OCR текст, найденный на изображениях, или это что-то еще? – mjv

+0

@itowlson, что заставляет нас смущаться вопросом ;-) – mjv

ответ

8

на основе @peters ответа я в конечном итоге с помощью этого:

string bitmapString = null; 
using (MemoryStream memoryStream = new MemoryStream()) 
{ 
    image.Save(memoryStream, ImageFormat.Png); 
    byte[] bitmapBytes = memoryStream.GetBuffer(); 
    bitmapString = Convert.ToBase64String(bitmapBytes, Base64FormattingOptions.InsertLineBreaks); 
} 

и

Image img = null; 
byte[] bitmapBytes = Convert.FromBase64String(pictureSourceString); 
using (MemoryStream memoryStream = new MemoryStream(bitmapBytes)) 
{ 
    img = Image.FromStream(memoryStream); 
} 
4

из растрового изображения в строке:

MemoryStream memoryStream = new MemoryStream(); 
bitmap.Save (memoryStream, ImageFormat.Png); 
byte[] bitmapBytes = memoryStream.GetBuffer(); 
string bitmapString = Convert.ToBase64String(bitmapBytes, Base64FormattingOptions.InsertLineBreaks); 

Из строки к изображению:

byte[] bitmapBytes = Convert.FromBase64String(bitmapString); 
MemoryStream memoryStream = new MemoryStream(bitmapBytes); 
Image image = Image.FromStream(memoryStream); 
+0

Не ImageFormat.Jpeg сжатие с потерями? Разве ImageFormat.Png не станет лучшим выбором из-за его безграничной природы? – Ants

+0

Я путешествую, без среды разработки, поэтому ответил из памяти (мой собственный) и некоторые из Google о синтаксисе. Я не считал, что Jpeg потерял, но согласен и обновит свой ответ ... – Peter

 Смежные вопросы

  • Нет связанных вопросов^_^