Reputation: 7153
I need save bitmap
in byte[]
with c#, how to do that?
Upvotes: 2
Views: 9300
Reputation: 176886
Working code for this is
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();
}
Upvotes: 7
Reputation: 48129
how about
to read in
YourByteArray = System.IO.File.ReadAllBytes( "YourGraphic.bmp" );
to write out
System.IO.File.WriteAllBytes( "SaveToFile.bmp", YourByteArray );
works for me
Upvotes: 2
Reputation: 1074
Look at this sample from MSDN http://msdn.microsoft.com/en-us/library/system.drawing.imaging.bitmapdata.aspx I hope you are looking for this.
Upvotes: 1