WebP 是谷歌推出的适合于 Web 使用的图像格式,在保持同样质量的情况下,可比 JPG 减小 40% 的体积。

但 Typecho 默认不支持 WebP 格式,需要简单修改下源码。

注:本文正文策略适用于 Typecho 1.1,在评论中给出了 1.2 对应的文件,如果升级到了最新版,参照修改即可。

第一部分:修改方法

修改 var/Widget/Themes/List.php 第 70 行:

return preg_match("/screenshot\.(webp|jpg|png|gif|bmp|jpeg)/i",path);

修改 var/Widget/Abstract/Contents.php 第 686 行:

$value['attachment']->isImage = in_array($content['type'], array('webp', 'jpg', 'jpeg', 'gif', 'png', 'tiff', 'bmp'));

修改 var/Typecho/Common.php 第 1399 行,添加:

'webp' => 'image/webp',

修改后台设置,基本 -> 允许上传的文件类型 -> 其他格式,添加 webp 。

感谢陌染小窝提供的方案。

第二部分:黑白图像效果对比

Bob Dylan 01.jpg

黑白图像,JPG 原图,143 KB。

转换工具:WebP Converter - AnyWebP

操作系统:macOS Big Sur 11.6

Bob Dylan 01 - 075.webp

黑白图像,WebP 75% 压缩比,47 KB。

Bob Dylan 01 - 085.webp

黑白图像,WebP 85% 压缩比,86 KB。

Bob Dylan 01 - 100.webp

黑白图像,WebP 无损压缩,122 KB。

第三部分:彩色图像效果对比

原图是一张 Photoshop 输出的 PNG 图片,1.3 MB,就不上传了,这里上传一张 macOS 预览导出的 JPG 无损压缩图:

卯兔.jpg

彩色图像,JPG 无损压缩,762 KB。

卯兔 - 075.webp

彩色图像,WebP 75% 压缩比,53 KB。

卯兔 - 085.webp

彩色图像,WebP 85% 压缩比,85 KB。

卯兔 - 100.webp

彩色图像,WebP 无损压缩,120 KB。

第四部分:推荐方案

macOS 平台的 WebP Converter 从 JPG/PNG 转换 WebP 非常方便,简单的格式转换无需付费,使用高级功能,终身授权费用也只有 ¥25。

如果你也像我一样无法分辨各种转换质量的视觉效果差异,推荐使用 75% 的压缩比,这是经过测试的体积/画质最佳平衡点。

最后修改:2023 年 04 月 05 日
如果觉得我的文章对你有用,请随意赞赏