|
|
压缩图片后文件变大,这事很多人第一次遇到都会觉得离谱:我明明点的是“压缩”,为什么导出来反而比原图还大?其实这不一定是软件出错,更多时候是我们对“压缩”这件事的理解太简单了。图片文件大小不是只由分辨率决定,也不是只要重新保存一次就必然变小,它跟格式、编码方式、质量参数、元数据、颜色信息都有关系。
最常见的原因,是原图本来已经被压缩得很厉害。比如手机拍出来的 JPG,系统相机通常已经做过一轮比较成熟的压缩,体积和画质之间算是平衡过的。如果你再拿它去某些软件里“压缩”,软件可能会先把图片解码成原始像素,再按自己的默认参数重新编码。默认质量如果设得偏高,或者编码器效率不如原来的相机算法,最后文件自然可能变大。
还有一种情况是格式选错了。比如你把 JPG 转成 PNG,以为换个格式就是压缩,结果体积暴涨。PNG 更适合图标、截图、线条、透明背景这类颜色块比较明确的图片,不太适合普通照片。照片里有大量复杂渐变和细节,PNG 为了保留无损信息,往往会生成很大的文件。反过来,截图如果用 JPG,有时看起来体积小了,但文字边缘会糊,还会出现噪点,这也是格式不匹配。
软件的“压缩”选项也经常有迷惑性。有些工具所谓压缩,其实只是重新导出,甚至会自动补上色彩配置文件、缩略图、EXIF 信息、预览数据等。原图如果之前已经去掉了这些元数据,而新文件又被软件加回来了,体积增加并不奇怪。尤其是一些设计软件、修图软件,为了兼容显示效果,会嵌入 ICC 色彩配置文件,几百 KB 到一两 MB 都有可能。
还有人会忽略尺寸没有变。真正影响体积的一个大头是像素数量,4000×3000 的照片和 1200×900 的照片,哪怕压缩质量一样,体积通常差很多。如果只是把质量从 90 调到 85,但分辨率完全不动,原图又本来不大,那省出来的空间可能很有限。某些软件还会在导出时把图片从较低采样或渐进式编码变成普通编码,结果压缩效率下降。
另外,透明通道、颜色深度也会影响大小。比如一张看似普通的图片,如果被保存成带 alpha 通道的 PNG,或者从 8 位颜色变成 24 位、32 位颜色,文件可能明显变大。截图类图片尤其容易遇到这种问题,看起来画面没区别,但底层保存的信息量已经变了。
我自己的经验是,别把“压缩”当成一个按钮,而要先看图片用途。如果是照片,优先用 JPG 或 WebP,适当降低质量并缩小尺寸;如果是网页图,可以考虑 WebP 或 AVIF;如果是截图、图标、透明素材,再考虑 PNG。压缩前后最好同时对比画质、尺寸、格式和元数据,不要只盯着文件名后面的大小。
所以,压缩后变大并不是玄学,通常是重新编码参数、格式选择、元数据、颜色信息或原图已高度压缩造成的。真正靠谱的做法,是按图片内容选择格式,再控制分辨率和质量参数。否则软件虽然显示“压缩完成”,实际只是换了一种更占空间的保存方式而已。 |
|