C#-位图到字节数组
我有一个从面板保存图像的方法。此方法使用位图类。我希望我的方法应该返回图像的字节数组C#-位图到字节数组,c#,asp.net,wpf,winforms,C#,Asp.net,Wpf,Winforms,我有一个从面板保存图像的方法。此方法使用位图类。我希望我的方法应该返回图像的字节数组 private byte[] SaveImage() { byte[] byteContent = null; using (Bitmap bitmap = new Bitmap(500, 500)) { using (Graphics g = Graphics.FromImage(bitmap)) {
private byte[] SaveImage()
{
byte[] byteContent = null;
using (Bitmap bitmap = new Bitmap(500, 500))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
Rectangle rectangle = myPanel.Bounds;
Point sourcePoints = myPanel.PointToScreen(new Point(myPanel.ClientRectangle.X, myPanel.ClientRectangle.Y));
g.CopyFromScreen(sourcePoints, Point.Empty, rectangle.Size);
}
string fileName = @"E:\\MyImages.Jpg";
bitmap.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpeg);
}
return byteContent;
}
您需要使用MemoryStream将位图序列化为图像格式并获取字节
using (Bitmap bitmap = new Bitmap(500, 500))
{
using (Graphics g = Graphics.FromImage(bitmap))
{
...
}
using (var memoryStream = new MemoryStream())
{
bitmap.Save(memoryStream, System.Drawing.Imaging.ImageFormat.Jpeg);
return memoryStream.ToArray();
}
}
有。为什么返回空字节内容?在代码中的何处使用或分配byteContent..?将位图保存到内存流并设置byteContent=stream.ToArray()@DJ KRAZE实际上,我有意返回null to byte数组变量,因为我不知道如何将其赋值为byte数组。为什么您要指出“wpf”作为标记?wpf中的位图处理完全不同!谢谢Joachim.现在我得到了字节数组。