Linux系统下在命令行中压缩JPEG图像的方法

2016-03-31 15:34 1 1 收藏

想不想get新技能酷炫一下,今天图老师小编就跟大家分享个简单的Linux系统下在命令行中压缩JPEG图像的方法教程,一起来看看吧!超容易上手~

【 tulaoshi.com - 服务器 】

Linux系统下在命令行中压缩JPEG图像的方法

   如今拍照设备(如智能手机、数码相机)拍出来的图片分辨率越来越大。甚至3630万像素的Nikon D800已经冲入市场,并且这个趋势根本停不下来。如今的拍照设备不断地提高着照片分辨率,使得我们不得不压缩后,再上传到有储存限制、带宽限制的云。

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

  如果要压缩PNG图像,参考这个指南的例子。

  安装jpegoptim

  Ubuntu, Debian 或 Linux Mint:

  代码如下:

  $ sudo apt-get install jpegoptim

  Fedora:

  代码如下:

  $ sudo yum install jpegoptim

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/fuwuqi/)

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

  代码如下:

  $ sudo yum install jpegoptim

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/fuwuqi/)

  无损压缩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图片。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/fuwuqi/)

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

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

  代码如下:

  $ jpegoptim -m50 photo.jpg

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

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

201563155612335.jpg (800×243)

  一次压缩多张JPEG图像

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

  代码如下:

  #!/bin/sh

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

  # 保存在./compressed目录

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

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

来源:https://www.tulaoshi.com/n/20160331/2050802.html

延伸阅读
标签: 电脑入门
通常我们电脑都是通过有线连接宽带,那么无线wifi该如何设置呢?下面图老师小编就给大家介绍下Linux系统下如何通过命令行来连接wifi,一起来学习下吧。 无论何时要安装一款新的 Linux 发行系统,一般的建议都是让您通过有线连接来接到互联网的。 这主要的原因有两条:第一,您的无线网卡也许安装的驱动不正确而不能用;第二,如果您是从命令...
标签: 电脑入门
Linux 系统的时间有时候会不准,不准确的时间会导致日志文件中的时间出现错误,所以准确的时间是很重要的,那么要怎么更改Linux 系统的时间呢?下面图老师小编给大家介绍下使用命令行更改Linux系统时间和日期的方法步骤。 问题: 在 Linux 上, 我怎样通过命令行来改变日期和时间? 在 Linux 系统中保持日期和时间的同步是每一个 Linux 用...
启动命令行选项 下表列出了 Microsoft Access 的命令行选项: database 打开指定的 Microsoft Access 数据库或 Microsoft Access 项目。如果需要,可以包括路径。如果运行 Microsoft Windows 95,默认路径为 My Documents 文件夹。 Access 数据库或 Access 项目 /excl 打开指定 Access 数据库进行独占方式访问。如果要在多用户环境中打...
下表列出了 Microsoft Access 的命令行选项: 选项 效果 database 打开指定的 Microsoft Access 数据库或 Microsoft Access 项目。如果需要,可以包括路径。如果运行的是 Microsoft Windows 95,默认路径为 My Documents 文件夹。 /excl 打开指定的 Access 数据库进行独占方式的访问。若要在多用户环境中打开数据库以进行共享...
标签: Delphi
  Delphi提供了访问命令行参数的方便的方式,那就是使用ParamStr和ParamCount函数。其中ParamStr(0)返回的是当前程序名,如C:\TEST\MYPROG.EXE,ParamStr(1)返回第一个参数,以此类推;ParamCount则是参数个数。示例如下: var I: Word; Y: Integer; begin Y := 10; for  I := 1 to ParamCount do &nbs...

经验教程

862

收藏

19
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部