Как сохранить растровое изображение в байте [] C #? - PullRequest
2 голосов
/ 17 марта 2011

Мне нужно сохранить bitmap в byte[] с помощью c #, как это сделать?

Ответы [ 3 ]

7 голосов
/ 17 марта 2011

Рабочий код для этого

System.Drawing.Image originalImage = dpgraphic.image;// replace your image here i.e image bitmap
//Create empty bitmap image of original size
float width=0, height=0;
Bitmap tempBmp = new Bitmap((int)width, (int)height);
Graphics g = Graphics.FromImage(tempBmp);
//draw the original image on tempBmp
g.DrawImage(originalImage, 0, 0, width, height);
//dispose originalImage and Graphics so the file is now free
g.Dispose();
originalImage.Dispose();
using (MemoryStream ms = new MemoryStream())
{
    // Convert Image to byte[]
    tempBmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
    //dpgraphic.image.Save(ms, System.Drawing.Imaging.ImageFormat.Bmp);
    byte[] imageBytes = ms.ToArray();
}
2 голосов
/ 17 марта 2011

как насчет

читать

YourByteArray = System.IO.File.ReadAllBytes( "YourGraphic.bmp" ); 

выписать

System.IO.File.WriteAllBytes( "SaveToFile.bmp", YourByteArray ); 

у меня работает

1 голос
/ 17 марта 2011

Посмотрите на этот образец из MSDN http://msdn.microsoft.com/en-us/library/system.drawing.imaging.bitmapdata.aspx Я надеюсь, что вы ищете это.

...