如何在 Linux 中将图像转换为 WebP 格式?


在当今的数字时代,图像在网站和各种数字项目中发挥着至关重要的作用。但是,图像尺寸越大,加载时间就越长,从而导致用户体验不佳。您可能想知道解决此问题的方案。幸运的是,Google 开发了 WebP 图像格式,与 JPEG 和 PNG 等传统图像格式相比,它提供了更出色的压缩和质量。在本文中,我们将深入探讨如何在 Linux 上使用 WebP 工具将图像转换为 WebP 格式。通过将图像转换为 WebP 格式,您可以显着减小其文件大小,从而提高网站性能并增强用户体验。

步骤 1:安装 WebP 工具

  • 在您的 Linux 机器上打开终端。

  • 在终端中运行以下命令。

sudo apt-get install webp

以下命令将生成如下所示的输出:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  webp
0 upgraded, 1 newly installed, 0 to remove and 10 not upgraded.
Need to get 89.6 kB of archives.
After this operation, 292 kB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu bionic/main amd64 webp amd64 0.6.1-2 [89.6 kB]
Fetched 89.6 kB in 1s (86.6 kB/s)       
Selecting previously unselected package webp.
(Reading database ... 146234 files and directories currently installed.)
Preparing to unpack .../webp_0.6.1-2_amd64.deb ...
Unpacking webp (0.6.1-2) ...
Setting up webp (0.6.1-2) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...

输出以正在读取软件包列表的消息开头,然后是构建依赖关系树和读取状态信息。然后,输出显示 webp 软件包是唯一将要安装的新软件包,它将占用 89.6 kB 的磁盘空间。

接下来,从 Ubuntu 档案中下载软件包,然后将其安装到系统中。最后,输出显示正在触发 man-db 软件包,该软件包更新系统的帮助页面。

  • 等待安装过程完成。这可能需要几分钟,具体取决于您的互联网速度和系统规格。

  • 安装完成后,您可以通过运行以下命令来验证 WebP 工具是否已安装:

cwebp -version

以下是 cwebp -version 命令的终端输出:

WebP Encoder version 1.1.0

此输出显示 cwebp 命令的版本,在本例中为 1.1.0。cwebp 命令用于在 Linux 中将图像转换为 WebP 格式。您可以将‘-version’选项与许多其他可用的 Linux 命令一起使用,以显示版本信息。

现在您已成功在 Linux 系统上安装了 WebP 工具,您现在可以使用 cwebp 命令按照后续步骤将图像转换为 WebP 格式:

步骤 2:将图像转换为 WebP 格式

  • 打开终端:按下键盘上的 Ctrl+Alt+T 或在应用程序菜单中搜索“终端”以打开终端。

  • 导航到包含图像的目录:使用 cd 命令导航到包含要转换的图像的目录。例如,如果您的图像位于 Pictures 文件夹中,则可以使用以下命令导航到它。

cd ~/Pictures
  • 将图像转换为 WebP 格式:进入包含图像的目录后,您可以使用 cwebp 命令将其转换为 WebP 格式。以下是 cwebp 命令的基本语法。

cwebp [options] input_file -o output_file

以下是以供参考的终端输出示例,说明它将是什么样子:

$ cwebp -q 80 input.jpg -o output.webp
Input file size: 1024x768 pixels
Output file size: 120 KB
Output file: output.webp

以下是每个部分的详细说明:

  • cwebp:这是将图像转换为 WebP 格式的命令。

  • [options]:这些是您可以用来自定义输出图像的可选参数。在本例中,我们将使用 -q 选项来指定输出图像的质量。

  • input_file:这是要转换的图像文件的名称。

  • -o:对于输出文件,此选项指定名称

  • output_file:这是您要赋予输出文件的名称。

以下是如何使用 cwebp 命令将名为 my_image.jpg 的图像转换为 WebP 格式的示例:

cwebp -q 80 my_image.jpg -o my_image.webp

您可能会得到类似于此的终端输出:

Input file size: 654 KB
Output file size: 215 KB

在本例中,我们使用了 -q 选项将输出图像的质量设置为 80(满分 100)。我们还指定了输入文件 (my_image.jpg) 和输出文件 (my_image.webp)。

  • 查看输出文件:转换完成后,您可以使用图像查看器或支持 WebP 格式的 Web 浏览器查看输出文件。

步骤 3:批量转换

有时,您可能需要将多个图像转换为 WebP 格式。与其逐个转换每个图像,不如使用循环一次转换目录中的所有图像。以下是如何操作

  • 打开终端窗口并导航到包含要转换的图像的目录。

  • 使用以下命令转换目录中的所有 JPEG 图像。

for i in *.jpg; do cwebp -q 80 "$i" -o "${i%.jpg}.webp"; done

让我们分解一下此命令:

  • for i in *.jpg 是一个循环,它遍历目录中每个具有 .jpg 扩展名的文件。变量 $i 用于表示循环中的每个文件。

  • do cwebp -q 80 "$i" -o "${i%.jpg}.webp"; 是将每个图像转换为 WebP 格式的命令。-q 标志将输出图像的质量设置为 80(如果需要,您可以更改此值)。$i 变量用于指定输入文件名,而 ${i%.jpg}.webp 用于确定输出文件名。${i%.jpg} 从输入文件名中删除 .jpg 扩展名,并在末尾添加 .webp 以指定输出文件格式。

  • done 结束循环。

因此,当您运行此命令时,循环将遍历目录中的每个 JPEG 文件,使用 cwebp 命令将其转换为 WebP 格式,并将输出文件保存为具有 .webp 扩展名的文件,并保存在同一目录中。原始 JPEG 文件不会被修改或删除。

注意:如果您有不同文件扩展名的图像或想要转换目录中的所有图像,则可以相应地修改命令。例如,如果您有 PNG 图像,则可以使用 for i in *.png 代替 for i in *.jpg。

结论

总而言之,将图像转换为 WebP 格式可以成为提高网站加载速度而不影响图像质量的好方法。本文提供了有关如何使用 cwebp 命令在 Linux 中将图像转换为 WebP 格式的分步指南。我们还演示了如何通过利用循环一次转换多个图像。通过遵循这些说明,您将能够通过将图像转换为 WebP 格式轻松优化网站的加载时间。这项新知识将使您能够增强网站的整体用户体验,使其更容易被您的受众访问。

更新于:2023-07-27

2K+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.