最佳答案
我正在制作远程桌面共享应用程序,其中我捕获了桌面的图像,压缩它,并发送到接收器。为了压缩图像,我需要把它转换成一个字节[]。
目前我使用的是:
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage;
}
但是我不喜欢它,因为我必须将它保存在 ImageFormat 中,这可能会消耗资源(Slow Down)并产生不同的压缩结果。复制和记忆,但我无法理解他们。
那么有没有其他的方法来实现这个目标呢?