如何在C#中将字节数组转换为.eps图像?
我有一个代码可以处理图形图像(.jpg
,.png
...)但是当我转换为.eps
格式时会抛出一个参数异常。
MemoryStream ms = new MemoryStream(byteArray, 0, byteArray.Length);
using (ms)
{
//saving image on current project directory
Image img = Image.FromStream(ms);
img.Save(Environment.CurrentDirectory + "file.eps");
}
答案 0 :(得分:2)
如果您只需要保存,可以使用课程File
保存:
byte[] buffer = ms.GetBuffer();
File.WriteAllBytes(Environment.CurrentDirectory + "file.eps", buffer);
答案 1 :(得分:1)
从您发布的代码中,您似乎只将图像保存为扩展名为* .eps的文件。如果是这样,您根本不必创建MemoryStream
对象,只需使用此方法:
try
{
File.WriteAllBytes(Environment.CurrentDirectory + "file.eps", byteArray);
}
catch (Exception err)
{
//your exception handling code here
}
它适用于所有类型的文件,但不验证文件内容是否是有效图像。但是,如果您确定文件的内容是什么,那么在这种情况下使用它应该是一种很好的方法。但是,这种方法可能会抛出许多异常,因此请务必妥善处理它们。