我搜索了有关字节数组的所有问题,但我总是失败。我从未编码过C#,这方面我是新手。您能帮我如何从字节数组制作图像文件吗?这是我的函数,它在名为的数组中存储字节 imageDatapublic void imageReady( byte[] imageData, int fWidth, int fHeight))
3 回答
慕标琳琳
TA贡献1830条经验 获得超9个赞
您需要将它们bytes
放入MemoryStream
:
Bitmap bmp;using (var ms = new MemoryStream(imageData)){ bmp = new Bitmap(ms);}
那使用了Bitmap(Stream stream)
构造函数重载。
更新:请记住,根据文档以及我一直阅读的源代码,ArgumentException
在以下情况下会抛出:
stream does not contain image data or is null.-or-stream contains a PNG image file with a single dimension greater than 65,535 pixels.
慕无忌1623718
TA贡献1744条经验 获得超4个赞
可以像这样简单:
var ms = new MemoryStream(imageData);System.Drawing.Image image = Image.FromStream(ms);image.Save("c:\\image.jpg");
测试一下:
byte[] imageData;// Create the byte array.var originalImage = Image.FromFile(@"C:\original.jpg");using (var ms = new MemoryStream()){ originalImage.Save(ms, ImageFormat.Jpeg); imageData = ms.ToArray();}// Convert back to image.using (var ms = new MemoryStream(imageData)){ Image image = Image.FromStream(ms); image.Save(@"C:\newImage.jpg");}
- 3 回答
- 0 关注
- 474 浏览
添加回答
举报
0/150
提交
取消