Linux图像文件瘦身:命令行与图形界面终极指南
在本文中,我们讨论了Linux中减小图像文件大小的不同方法。随着对图像质量的关注增加,图像文件的大小也在大幅增加。因此,我们为您带来了一篇关于此任务的文章,不断减小这些大图像的文件大小是常见需求。
让我们快速了解减小图像文件大小的过程。
在Linux中使用转换命令(convert)来减小图像文件的尺寸。
在我们进行这个命令的应用之前,让我们确保它已经存在于系统中。
convert
命令属于 ImageMagick 软件包。Debian/Ubuntu 用户可以通过运行以下命令来安装 ImageMagick:
sudo apt install imagemagick

一旦安装完软件包,我们就可以运行 man convert
来查看该命令所支持的各种操作。
降低图像的质量
降低图像质量是减小图像尺寸最简单的方法。
convert <输入文件> -quality 10% <输出文件>

使用 convert
命令会显著降低图像的质量。如果我们想要检查新文件的大小,可以这样做:
du -h jd_logo*

du
命令用于显示 Linux 中文件占用的磁盘空间量。在上述命令中,我们显示了所有版本的“jd_logo”所占用的空间大小。
在Linux中通过像素减小图像文件大小。
如果减少图像中像素的数量,可以减小图像的文件大小。为此,我们需要提供新的宽度和高度。
convert <输入文件> -resize 200x200 <输出文件>

当我们拉伸图像的尺寸时,可以观察到缩小图像质量的减少。
尽管命令中提供的尺寸违反了原始纵横比,但图像的纵横比得以恢复。convert
命令背后的想法是,缩小后的图像必须适应指定的尺寸。
为了将图像准确地缩小到指定尺寸,并忽略宽高比,需在调整大小参数后添加“!”符号。
convert <输入文件> -resize 200x200! <输出文件>
转换图像格式
一些网站只支持特定的文件扩展名,所以 convert
命令提供了转换图片格式的功能。
convert <输入文件> <输出文件>

如果没有提供参数,质量降低了92%。在上面的片段中,我们将一个’.png’图像文件转换为一个’.jpg’文件。
convert
命令具有许多应用,例如旋转图像、应用特效或在图像上绘画。我们可以通过 man convert
命令来参考用户手册,掌握图像格式化工具。
为了转换多个文件,我们需要一个运行循环以处理所有图像的 Bash 脚本。还有一个处理多个图像文件的替代方法,就是在 ImageMagick 软件包中使用的 mogrify
命令。
2. 使用 mogrify 命令
mogrify [选项] [文件列表]
convert
命令和 mogrify
命令的主要区别在于 mogrify
命令会直接在原始图像文件上应用操作,而 convert
命令则不会。
此外,mogrify
命令还支持用表达式同时处理多个文件。例如:
mogrify -quality 10 *.jpg

“convert
和 mogrify
应用程序是相同的,因为它们都来自于同一个软件包。”
3. 使用 Pngcrush 来处理 PNG 文件
Pngcrush 是一个 PNG(可移植网络图形)文件优化器。它通过运用各种压缩方法和过滤器来减小图像的文件尺寸。
对于 Debian/Ubuntu 用户,可以运行以下命令进行安装。
sudo apt get install pngcrush
其他 Linux 发行版的用户可以使用标准的安装命令,然后再安装 Pngcrush。
安装完成后,我们可以通过运行以下步骤来缩小 PNG 文件的大小:
pngcrush -brute <输入文件> <输出文件>

“-brute”选项将文件通过114种滤波/压缩方法进行处理。该扩展过程只需几秒钟。用户可以选择过滤器、级别和优化策略,而不是采用蛮力方法。
可以通过手册页面(man pngcrush
)了解到过滤器的类型和其他属性。
4. 使用 Jpegoptim 处理 JPG 文件
Jpegoptim 是一款 JPG(联合图像专家组)文件压缩器。该命令支持将百分比和目标文件大小作为参数,以减小图像尺寸。
安装非常简单。
sudo apt install jpegoptim
安装完成后,我们可以运行。
jpegoptim --size=<目标大小> <输入文件>

Jpegoptim 工具会覆盖原始图片,因此建议保留备份图片文件。这个工具最好的功能是可以接受目标文件大小,对于上传指定尺寸的图片来说非常方便,可谓救命稻命。
在上面的图中,我们将一个260 KB的文件压缩成了一个20KB的图片。

尽管大小减少了90%,图片质量保持完整。该指令也支持按百分比进行压缩。
我们可以通过输入 man jpegoptim
来从手册页面上学习更多关于该命令的信息。
5. 使用 Trimage 图形用户界面工具
Trimage GUI 工具是一个基础的拖放软件。添加的文件会自动压缩到可能的无损文件大小。
安装方式与之前的方法相似。
sudo apt install trimage
安装完成后,我们可以通过在系统中搜索“trimage”来访问它。Trimage 窗口的外观如下图所示。

支持的列有哪些?
- 文件名称
- 原始图像大小
- 转换后图像大小
- 压缩百分比
这个工具会覆盖原始图像。由于压缩方式为无损压缩,所以压缩程度最小。
GIMP(GNU 图像处理程序)是基于图形用户界面的图像尺寸缩小的好选择,但绝对有些过于复杂了。
结论
在 Linux 中,减小图像文件大小的最简单和最有效的方法是使用 ImageMagick 包提供的命令。
希望这篇文章既有趣又有启发。感谢您的阅读。
参考资料
Pngcrush 官方网站
Trimage 官方网站