我设法得到这样的东西在另一个项目中工作,但不是在我当前。 即使我在调用save之前处理了b位图,文件也会锁定并且在再次保存时不能被覆盖。知道我可能做错了什么?
Bitmap b = (Bitmap)Image.FromFile("image.png");
Bitmap bClone = (Bitmap)b.Clone();
// modify bClone here..
b.Dispose();
b = null;
GC.Collect();
bClone.Save("image.png");
答案 0 :(得分:1)
“克隆”方法无法执行您想要的操作。您可以使用位图的复制构造函数来创建包含相同像素的单独图像。
Bitmap bClone = null;
using (Bitmap b = (Bitmap)Image.FromFile("image.png"))
{
bClone = new Bitmap(b);
// modify bClone here..
}
bClone.Save("image.png");
bClone.Dispose();
答案 1 :(得分:0)
使用FromFile,您实际上无法控制文件对象的生命周期。请尝试使用FromStream。