如何在 Linux 中将图片转换为 WebP 格式?
在当今的数字时代,图片在网站和各种数字项目中扮演着至关重要的角色。但是,图片越大,加载时间越长,从而导致用户体验不佳。您可能想知道这个问题的解决方案。幸运的是,谷歌开发了 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
Here is the terminal example of output for reference how it’ll look like −
$ 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 格式的图片查看器或网页浏览器查看输出文件。
步骤 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 格式是提高网站加载速度的绝佳方法,同时又不影响图片质量。本文提供了在 Linux 中使用 cwebp 命令将图片转换为 WebP 格式的分步指南。我们还演示了如何使用循环一次转换多张图片。按照这些说明,您将能够通过将图片转换为 WebP 格式来轻松优化网站的加载时间。这些新知识将帮助您提升网站的整体用户体验,使其更易于访问。
相关文章
有用资源
linux 参考教程 - 该教程包含有关 linux 的更多信息:https://www.cainiaomax.com/linux/

