发布于 2026-01-06 2 阅读
0

通过终端将图片转换为 WebP 格式,提升网站速度。

通过终端将图片转换为 WebP 格式,提升网站速度。

这种.webp格式是一种广泛支持的压缩图像格式,在网络上越来越常见。使用这种格式存储图像.webp可以减小网页的大小,同时还能保持所需的图像质量。图像大小的节省非常显著,这意味着您的网页加载速度将大大加快。

如果你想将图像转换为某种格式.webp,可以使用许多应用程序,例如 Photoshop,但更快捷的方法是直接在终端中进行转换。让我们来看看它是如何工作的。

支持 .webp 文件

.webp除 Internet Explorer 外,几乎所有浏览器都广泛支持此功能。您可以在下方查看完整的支持列表:
WebP 支持表

安装 WebP 和 cwebp

要开始将文件转换为 .txt .webp,首先需要安装一个名为 .txt 的工具,它是Google 提供的软件包cwebp的一部分。如果您安装了Homebrew,这很容易,可以通过终端像这样安装:webp

brew install webp
Enter fullscreen mode Exit fullscreen mode

如果不知道如何安装,可以通过 Google 搜索找到更多安装说明。安装完成后,我们可以从终端运行命令cwebp,得到以下输出:

~ % cwebp
Usage:
    cwebp [options] -q quality input.png -o output.webp
Enter fullscreen mode Exit fullscreen mode

所以现在,如果我们想将.png文件更改为.webp质量为 60 的格式,我们可以运行以下命令:

cwebp -q 60 image.png -o image.webp
Enter fullscreen mode Exit fullscreen mode

这将转换image.png成一个名为“60%质量”的文件image.webp。更改此质量值会改变输出文件的大小——质量越低,文件越小——但保持图像质量良好也很重要。原始图像仍将被保留,因此我们将拥有两个版本的文件。

由于某些旧版浏览器(例如 Internet Explorer)不支持.webp,因此同时拥有这两个版本实际上很有用。在 HTML 中,我们可以使用 `<script>` 标签来使用我们的.webp文件,并回退到原始.png文件<picture>

<picture>
    <source srcset="image.webp" type="image/webp">
    <img src="image.png" alt="Image for Article" />
</picture>
Enter fullscreen mode Exit fullscreen mode

这意味着对于使用较新浏览器的用户来说,他们将获得更快的加载速度带来的额外好处——而使用较旧浏览器的用户,如果他们的浏览器不支持,仍然可以看到图像.webp

将所有图像转换为 .webp 格式

.webp由于速度如此之快,最好备份.webp所有图片,以便在需要时随时使用。因为cwebp备份还会保留原始文件,所以不用担心丢失图片的原始副本。但是,由于大多数服务器都存储着大量图片,这样做可能会非常耗时。

幸运的是,我们可以使用循环cwebp将所有 .jpg .png、.jpg.jpg和 .jpg.jpeg文件转换为.webp.jpg 格式for。以下代码将查找运行该代码的目录中的所有图像,并.webp为每张图像创建 .jpg 版本。由于它是递归工作的,因此它会转换服务器上找到的任何图像。这意味着根据图像数量,运行此代码有时可能会很耗时。您可以点击此处了解更多关于 find 命令的信息

echo 'Converting all .png, .jpg, and .jpeg files to .webp...'
for f in $(find . -name '*.png' -or -name '*.jpg' -or -name '*.jpeg'); do 
    if [ ! -f "${f%.*}.webp" ]; then
        cwebp -q 60 $f -o ${f%.*}.webp
    fi
done
Enter fullscreen mode Exit fullscreen mode
文章来源:https://dev.to/smpnjn/speed-up-your-website-by-converting-your-images-to-webp-from-terminal-4el2