我喜欢 CloudFlare。它能让网站快很多。它能做的一件事就是在浏览器(如谷歌浏览器)支持 WebP 时自动,将 PNG 文件更改为 WebP。这非常棒,因为它们更小,因此加载速度更快。
不过,有时我需要下载一个图像文件,但最终得到的却是一个 .webp
文件。我的操作系统无法处理这些文件。所以我有两个选择:在 Safari 中打开图片 URL(它还不支持 WebP),或者将其转换为 PNG。
这种情况在我身上发生得太多了,所以我决定找到一个更好的解决方案。我在 Mac 上运行一个名为 Hazel 的工具,由 Noodlesoft 提供。这个工具可以帮助我保持下载文件夹和垃圾文件夹的干净,而且还有其他一些我可以自己定义的规则。我决定添加一条新规则。
前提条件
要将 .webp
文件转换为 .png
文件,需要使用 Google 的 WebP 库。在 Mac 上,最简单的方法就是使用 Brew:
brew install webp
将 WebP 转换为 PNG
将 WebP 文件转换为 PNG 的命令如下:
/usr/local/bin/dwebp -o target.png input.webp
在 Hazel 中添加规则
现在是打开 Hazel 并添加规则的时候了:
我们的规则是:
- 查找下载文件夹中以
.webp
结尾的文件。 - 运行脚本将这些
.webp
文件转换为 PNG。 - 将
.webp
文件移至垃圾箱。 - 显示通知,说明已完成所有操作。
所有这些在 Hazel 中都很容易配置。你需要的是以下嵌入式脚本:
脚本使用 /bin/bash
,因为我们需要使用一些 bash 魔法去除 .webp
扩展名,然后替换为 .png
:
/usr/local/bin/dwebp -o "${1%%.*}.png" $1
按上述说明设置好所有规则并复制粘贴脚本后,保存规则即可。您可以将任何 WebP 文件保存到 Downloads 文件夹(或您决定运行此规则的任何文件夹),它将自动转换为 PNG!(via Joost )