【发布时间】:2014-06-16 08:45:06
【问题描述】:
我正在尝试保存 JPEG 图像,但出现错误:“GDI+ 中发生一般错误”
我尝试了以下代码:
Bitmap b = new Bitmap(m_image.Width, m_image.Height);
Graphics g = Graphics.FromImage((Image)b);
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(m_image, 0, 0, m_image.Width, m_image.Height);
g.Dispose();
Image img1 = (Image)b;
img1.Save(Filename, ImageFormat.Jpeg);
m_image.Save(Filename, ImageFormat.Jpeg);
或
m_image.save(filename, ImaheFormat.Jpeg);
【问题讨论】:
-
错误出现在哪里?你在处理位图吗?
-
您是否在程序中加载带有
Image.FromFile(Filename)的图像? -
是的,我们在我的代码中使用了 m_image = Image.FromFile(file.FullName)。有什么问题吗?
-
可能与您的问题无关,但 GDI+ 对其资源的处置非常挑剔。您的示例代码中没有
using语句,在处理 10000 张图像后,您的程序很可能会因为您没有释放 GDI Handles 而开始抛出错误。