同一张图,JPG压到1.2MB,转成WEBP反而1.4MB。这不是工具坏了。JPG和WEBP的「压缩等级70」是两套刻度,70在两个编码器里代表的损失程度不一样,落到具体一张图上谁更小,要看内容:照片和大面积渐变WEBP占优,小图、纯色截图、已经压过几轮的JPG,WEBP经常会更大。

JPG的等级对应一张量化表的缩放比例,等级越低,高频系数被除得越狠。WEBP的有损模式走的是块预测加变换,等级调的是量化步长,两套算法连分块方式都不同。所以拿等级数字横着比没有意义:JPG的70和WEBP的70没有换算关系,只能拿同一张图的两个输出文件比字节。
这也意味着,看到WEBP压缩后比JPG还大,不能直接判定是压缩等级没调好。多数时候等级再降两档也回不来。
边长不足四五百像素的小图,容器头和块划分的开销占比高,省下的数据抵不过多出来的结构信息。已经是有损压过几轮的JPG,可去掉的冗余本来就不多,换一套编码等于重新建模一遍,可能建得更啰嗦。
纯色、文字、按钮为主的界面截图也常翻车。JPG的8×8分块对大片平坦区域效率很高,WEBP的块预测在这种素材上拿不到多少便宜,反而要额外记录预测模式。
第一步,打开WEBP压缩,顶部参数栏从左到右是:选择尺寸、宽(像素)、高(像素)、压缩等级,右侧是开始压缩。默认值分别是「保持原始尺寸」「原比例」「原比例」和70。

第二步,先把原文件的实际字节记下来,在文件属性里看,别用页面上的约数。
第三步,压缩等级从70改到60,跑一次;再改到80,跑一次。三次结果放在一起比字节,同时把文字边缘和天空渐变放大到200%看一遍。
第四步,如果两档都比原JPG大,别再往等级上耗,改尺寸。宽(像素)填目标显示宽度的两倍,高留「原比例」,让像素数先降下来。
第五步,还不划算就回JPG,用压缩等级70压一轮,体积和兼容性都更稳。
照片类素材、大面积渐变、带透明通道的图,WEBP在同等观感下通常能小两三成,这些是它的主场。网页交付也值得换,浏览器早就支持了。
归档、发给客户、投进老系统,仍然用JPG。判断标准是接收端能不能打开,以及这张图到底省下多少字节,而不是哪个格式更新。
把等级调到最低,WEBP会变小吗?
会小,但画质掉得比体积掉得快。等级压到40以下,文字边缘开始糊、平坦区开始出块,这时候体积小已经没意义了。
为什么同一张图两次压出来不一样?
WEBP有几种编码模式,工具会根据内容自动选。素材不一样,选到的模式不同,体积自然不同,这不是随机。
WEBP压缩后比JPG还大,是不是该换工具?
先换参数再换工具。等级、尺寸都试过还是大,说明这张图本来就不适合WEBP,换工具也一样。
WEBP压缩后比JPG还大,根子在于两个编码器的质量刻度不通用。先记原文件字节,再横着比三次输出,最后才决定换格式还是换尺寸,比一味降等级有用得多。