拥有一个在加载和存储图像时可以使用多年的代码,我发现我有一个图像打破了这段代码:
const string i1Path = @"c:\my\i1.jpg";
const string i2Path = @"c:\my\i2.jpg";
var i = Image.FromFile(i1Path);
i.Save(i2Path, ImageFormat.Jpeg);
Run Code Online (Sandbox Code Playgroud)
例外是:
发生了System.Runtime.InteropServices.ExternalException
GDI +中发生了一般错误.
at System.Drawing.Image.Save(String filename,ImageCodecInfo encoder,EncoderParameters encoderParams)
at System.Drawing.Image.Save(String filename,ImageFormat format)
at ...
据我所知,图像没什么特别之处.它的大小约为250像素,可以在Windows Image Viewer或Paint.NET中打开:

(由于上面的图片,上传到Stack Overflow后不再产生错误,我把原始图像放在这里)
我发现在调用Save方法时,目标图像文件是用零字节创建的.
我真的对导致错误的原因一无所知.
我的问题: