您有很多图像,并且想要在将图像上传到云或本地存储之前优化和压缩图像而又不损失其原始质量吗?有许多可用的GUI应用程序可帮助您优化图像。但是,这里有两个简单的命令行实用程序可以优化图像,它们是:

  • jpegoptim – 是一种用于优化/压缩JPEG文件而不会降低质量的实用程序。
  • OptiPNG –是一个小型程序,可以将PNG图像优化为较小的尺寸而不会丢失任何信息。

使用这两个工具,您可以一次优化单个或多个图像。

从命令行压缩或优化JPEG图像

jpegoptim是一个命令行工具,可用于优化和压缩JPEG,JPG和JFIF文件,而不会损失其实际质量。该工具支持无损优化,该优化基于优化霍

jpegoptim是一个命令行工具,可用于优化和压缩JPEG、JPG和JFIF文件,而不会失去其实际质量。这个工具支持无损优化,它基于哈夫曼表的优化。

在Linux中安装jpegoptim

要在Linux系统上安装jpegoptim,请从终端运行以下命令。

关于Debian及其衍生产品

# apt-get install jpegoptim
或者
$ sudo apt-get install jpegoptim

在基于RedHat的系统上

在基于RPM的系统(如RHEL,CentOS,Fedora等)上,您需要安装并启用EPEL存储库,或者,可以直接从命令行安装epel存储库,如下所示:

# yum install epel-release
# dnf install epel-release [在 Fedora 22+ 以上版本]

接下来从存储库安装jpegoptim程序,如下所示:

#yum install jpegoptim
#dnf install jpegoptim [在Fedora 22+版本上]

如何使用Jpegoptim图像优化器

jpegoptm的语法为:

$ jpegoptim filename.jpeg
$ jpegoptim [options] filename.jpeg

现在让我们压缩以下linuxmi.jpeg图像,但是在优化图像之前,首先使用du命令找出图像的实际大小,如图所示。

linuxmi@linuxmi:~/www.linuxmi.com$ du -sh linuxmi.jpg
6.4M linuxmi.jpg

这里的实际文件大小为6.4MB,现在运行以下命令压缩该文件:

linuxmi@linuxmi:~/www.linuxmi.com$ jpegoptim linuxmi.jpg
linuxmi.jpg 4928×3280 24bit N Exif IPTC XMP Adobe [OK] 6633584 –> 5776306 bytes (12.92%), optimized.
linuxmi@linuxmi:~/www.linuxmi.com$ du -sh linuxmi.jpg
5.6M linuxmi.jpg

在Linux中优化JPEG图像

在任何图像查看器应用程序中打开压缩的图像,都不会发现任何主要区别。源图像和压缩图像将具有相同的质量。

上面的命令将图像优化到最大可能的大小。而且,您可以将给定的图像压缩到特定的大小,但是这将禁止无损优化。

例如,让我们把上面的图像从5.6MB压缩到250k左右。

linuxmi@linuxmi:~/www.linuxmi.com$ jpegoptim –size=250k linuxmi.jpg

批量JPG图像压缩和优化

您可能会问如何压缩整个目录中的图像,这也不难。转到存放图像的目录。

linuxmi@linuxmi:~/www.linuxmi.com/img$ ls -l
总用量 21984
-rwxrwxrwx 1 linuxmi linuxmi 1889186 4月 19 2019 1.jpg
-rwxrwxrwx 1 linuxmi linuxmi 3195941 10月 30 2019 2.jpg
-rwxrwxrwx 1 linuxmi linuxmi 3676610 1月 30 14:54 3.jpg
-rwxrwxrwx 1 linuxmi linuxmi 7097026 8月 23 2014 4.jpg
-rwxrwxrwx 1 linuxmi linuxmi 6633584 7月 28 08:15 5.jpg

然后运行以下命令一次压缩所有图像。

linuxmi@linuxmi:~/www.linuxmi.com/img$ jpegoptim *.jpg
1.jpg 6000×4000 24bit P JFIF [OK] 1889186 –> 1889186 bytes (0.00%), skipped.
2.jpg 3024×3024 24bit N Exif ICC [OK] 3195941 –> 3127207 bytes (2.15%), optimized.
3.jpg 6000×3376 24bit N ICC JFIF [OK] 3676610 –> 3434775 bytes (6.58%), optimized.
4.jpg 5184×3456 24bit N Exif XMP [OK] 7097026 –> 6972828 bytes (1.75%), optimized.
5.jpg 4928×3280 24bit N Exif IPTC XMP Adobe [OK] 6633584 –> 5776306 bytes (12.92%), optimized.

您也可以一次压缩多个选定的图像:

linuxmi@linuxmi:~/www.linuxmi.com/img$ jpegoptim 1.jpg 2.jpg 3.jpg

有关jpegoptim工具的更多详细信息,请查看手册页。

$ man jpegoptim

从命令行压缩或优化PNG图像

 

OptiPNG是一种命令行工具,用于优化和压缩PNG文件,而不会失去其原始质量。

OptiPNG的安装和使用与jpegoptim非常相似。

在Linux中安装OptiPNG

要在Linux系统上安装OptiPNG,请在终端上运行以下命令。

关于Debian及其衍生产品

linuxmi@linuxmi:~/www.linuxmi.com# apt-get install optipng
要么
linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt-get install optipng

在基于RedHat的系统上

#yum install optipng
#dnf install optipng [在Fedora 22+版本上]

注意:您必须在基于RHEL/CentOS的系统上启用epel存储库才能安装optipng程序。

如何使用OptiPNG图像优化器

optipng的一般语法为:

$ optipng filename.png
$ optipng [options] filename.png

让我们压缩tecmint.png图像,但是在进行优化之前,首先检查图像的实际大小,如下所示:

linuxmi@linuxmi:~/www.linuxmi.com$ ls -lh linuxmi.png
-rwxr-xr-x 1 linuxmi linuxmi 4.0M 7月 17 16:13 linuxmi.png

上图的实际文件大小为4.0M,现在运行以下命令压缩该文件:

linuxmi@linuxmi:~/www.linuxmi.com$ optipng linuxmi.png
** Processing: linuxmi.png
4096×2304 pixels, 3×8 bits/pixel, RGB
Input IDAT size = 4126377 bytes
Input file size = 4132491 bytes

Trying:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 2951726

Selecting parameters:
zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 2951726

Output IDAT size = 2951726 bytes (1174651 bytes decrease)
Output file size = 2951804 bytes (1180687 bytes = 28.57% decrease)

如您在上面的输出中看到的,linuxmi.png文件的大小已减小到30.39%。现在,使用以下命令再次验证文件大小:

linuxmi@linuxmi:~/www.linuxmi.com$ ls -lh linuxmi.png
-rw-rw-r– 1 linuxmi linuxmi 2.9M 7月 28 08:48 linuxmi.png

如下图:

在任何图像查看器应用程序中打开压缩图像,原始文件和压缩文件之间不会发现任何重大差异。源图像和压缩图像将具有相同的质量。

批处理PNG图像压缩和优化

要一次压缩批处理或多个PNG图像,只需进入所有图像所在的目录,然后运行以下命令进行压缩。

linuxmi@linuxmi:~/www.linuxmi.com$ optipng *.png

有关optipng的更多详细信息,请参见手册页。

$ man optipng

总结

如果您是网站管理员,并且希望通过您的网站或博客提供优化的图像,那么这些工具可能非常方便。这些工具不仅可以节省磁盘空间,还可以减少上传图像时的带宽。

如果您知道还有其他实现这个一目标的更好方法,请通过评论告知我们,不要忘记在微信朋友圈分享这篇文章并支持我们。

发表评论

电子邮件地址不会被公开。 必填项已用*标注