如何实现将下载的WebP文件自动转换为PNG

如何实现将下载的WebP文件自动转换为PNG

我喜欢 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 并添加规则的时候了:

在 Hazel 中添加规则

我们的规则是:

  • 查找下载文件夹中以 .webp 结尾的文件。
  • 运行脚本将这些 .webp 文件转换为 PNG。
  • .webp 文件移至垃圾箱。
  • 显示通知,说明已完成所有操作。

所有这些在 Hazel 中都很容易配置。你需要的是以下嵌入式脚本:

嵌入式脚本

脚本使用 /bin/bash,因为我们需要使用一些 bash 魔法去除 .webp 扩展名,然后替换为 .png

/usr/local/bin/dwebp -o "${1%%.*}.png" $1

按上述说明设置好所有规则并复制粘贴脚本后,保存规则即可。您可以将任何 WebP 文件保存到 Downloads 文件夹(或您决定运行此规则的任何文件夹),它将自动转换为 PNG!(via Joost 

评论留言