如何使用 .net 2.0 将以字节数组格式表示的位图转换为 JPEG 格式?
你指的是什么类型的byte[]
?原始文件流数据吗?如果是这种情况,可以尝试使用以下代码(在客户端应用程序中使用 System.Drawing.dll
):
using(Image img = Image.FromFile("foo.bmp"))
{
img.Save("foo.jpg", ImageFormat.Jpeg);
}
如果你确实有一个 byte[]
,那么可以使用FromStream
和new MemoryStream(arr)
:
byte[] raw = ...todo // File.ReadAllBytes("foo.bmp");
using(Image img = Image.FromStream(new MemoryStream(raw)))
{
img.Save("foo.jpg", ImageFormat.Jpeg);
}
public static Bitmap BytesToBitmap(byte[] byteArray)
{
using (MemoryStream ms = new MemoryStream(byteArray))
{
Bitmap img = (Bitmap)Image.FromStream(ms);
return img;
}
}