【发布时间】:2016-07-26 07:00:51
【问题描述】:
在我的代码中,我打开一个位图图像并简单地重新保存它。它应该保持相同的质量和性能。但结果图像的大小发生了变化,尽管分辨率保持不变,并且视觉上没有变化。如何在不进行任何更改的情况下打开并保存图像? 我的代码:
Bitmap img = (Bitmap)Image.FromFile(path, true);
img.Save(path);
以后它应该只改变图像的不透明度,但现在它只是打开并保存它。为什么图像大小会发生变化?它变得比以前更小(386 对 301 Kb)
更新:
我对JPG格式的图像做了同样的事情,大小保持不变。只有 PNG 正在改变它的大小。在另一个PNG文件大小变得更大。有没有办法避免这种情况?
【问题讨论】:
-
Bitmap.Save默认情况下将图像保存在PNG我认为。与您正在加载的图像格式相同吗? -
PNG 是无损的,所以文件大小可能会改变,像素/质量本身保持不变。
-
我使用下面的答案来确保我保存为 png,但大小仍在变化。 @CasparKleijne 我需要尺寸保持不变,可以这样做吗?
标签: c# image-processing save