Linux通过命令行压缩JPEG图片的技巧

栏目:Linux教程 | 时间:2023-05-01 02:49

  在这个自拍横行的年代,照片多了处理起来非常不方便,有时候需要进行压缩处理,但JPEG图像压缩后可能会失真,下面小编就给大家介绍下Linux通过命令行压缩JPEG图片的方法,满足需要压缩JPEG图片用户的需求。

  事实上,这里有一个非常简单的方法压缩JPEG图像。一个叫“jpegoptim”命令行工具可以帮助你“无损”美化JPEG图像,让你可以压缩JPEG图片而不至于牺牲他们的质量。万一你的存储空间和带宽预算真的很少,jpegoptim也支持“有损”压缩来调整图像大小。

  安装jpegoptim

  Ubuntu, Debian 或 Linux Mint:

  $ sudo apt-get install jpegoptim

  Fedora:

  $ sudo yum install jpegoptim

  CentOS/RHEL安装,先开启EPEL库,然后运行下列命令:

  $ sudo yum install jpegoptim

  无损压缩jpeg图像

  为了无损地压缩一副JPG图片,使用:

  $ jpegoptim photo.jpg

  photo.jpg 2048x1536 24bit N ICC JFIF [OK] 882178 --》 821064 bytes (6.93%), optimized.

  注意,原始图像会被压缩后图像覆盖。

  如果jpegoptim不能无损美化图像,将不会覆盖它:

  $ jpegoptim -v photo.jpg

  photo.jpg 2048x1536 24bit N ICC JFIF [OK] 821064 --》 821064 bytes (0.00%), skipped.

  如果你想保护原始图片,使用“-d”参数指明保存目录

  $ jpegoptim -d 。/compressed photo.jpg

  这样,压缩的图片将会保存在。/compressed目录(以同样的输入文件名)

  如果你想要保护文件的创建修改时间,使用“-p”参数。这样压缩后的图片会得到与原始图片相同的日期时间。

  $ jpegoptim -d 。/compressed -p photo.jpg

  如果你只是想看看无损压缩率而不是真的想压缩它们,使用“-n”参数来模拟压缩,然后它会显示出压缩率。

  $ jpegoptim -n photo.jpg

  有损压缩JPG图像

  万一你真的需要要保存在云空间上,你还可以使用有损压缩JPG图片。

  这种情况下,使用“-m《质量》”选项,质量数范围0到100。(0是最好质量,100是最差质量)

  例如,用50%质量压缩图片:

  $ jpegoptim -m50 photo.jpg

  photo.jpg 2048x1536 24bit N ICC JFIF [OK] 882178 --》 301780 bytes (65.79%),

  optimized.

  在牺牲质量的基础上,将会得到一个更小的图片。

Linux通过命令行压缩JPEG图片的技巧

  一次压缩多张JPEG图像

  最常见的情况是需要压缩一个目录下的多张JPEG图像文件。为了应付这种情况,你可以使用接下来的脚本。

  #!/bin/sh

  # 压缩当前目录下所有*.jpg文件

  # 保存在。/compressed目录

  # 并拥有与原始文件同样的修改日期

  for i in *.jpg; do jpegoptim -d 。/compressed -p “$i”; done

  上面就是Linux通过命令行压缩JPEG图像的方法介绍了,无损压缩能够保证图片质量不变,但压缩包较大,有损压缩则能将图片压缩的更小,根据用户需求进行选择。

显示全部

加载中