原标题:如何在Linux命令行中优化和压缩JPEG或PNG图像

来自:Linux迷https://www.linuxmi.com/linux-yasuo-jpeg-png.html

您有很多图像,并且想要在将图像上传到云或本地存储之前优化和压缩图像而又不损失其原始质量吗?有许多可用的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,现在运行以下命令压缩该文件:

在Linux中优化JPEG图像

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

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

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

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

批量JPG图像压缩和优化

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

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

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

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.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

总结

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

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

责任编辑:

linux命令操作改变图片大小,如何在Linux命令行中优化和压缩JPEG或PNG图像相关推荐

  1. linux命令操作改变图片大小,使用linux命令调整图片大小、格式等

    mogrify --- 修改图片的大小 mogrify -resize 800X600 file.jpg file.jpg将被调整到800*600的大小.注意,如果原始图片的大小是1200*900,那 ...

  2. 用Windows画图改变图片大小(附Linux企鹅头像完全版)。

    在图像菜单下调整大小即可. ps: 今天早上发现调整过后的图片作为某些类似QQ头像的时候,还是不能显示全,最后把一个小图片再抓图,问题解决了. 附件:http://down.51cto.com/dat ...

  3. linux下tomact改变端口号,如何在Linux中修改tomcat端口号

    我这里有好几个tomcat,同时使用的话就要给端口号改成不一样的: 1.首先cd进tomcat目录里的conf文件夹,vi打开server.xml配置文件 [root@localhost soft]# ...

  4. Linux一条命令改变图片大小

    Linux下面有一条命令可以改变图片大小,使用非常方便. Example: convert -resize 100x100 test.jpg test-new.jpg 更多使用方式参考:man con ...

  5. 怎么改变图片大小?还不影响清晰度?

    怎么改变图片大小还不影响清晰度?正常来讲,图片在经过放大处理后都会出现一定程度的模糊,如果需要将小图放大,又不想图片清晰度产生问题,可以参考以下的方法. 首先我们在电脑上打开"嗨格式图片无损 ...

  6. 如何改变图片大小kb?图片尺寸怎么在线修改?

    随着现在拍摄设备的像素越来越高,图片越来越清楚也就让图片的体积越来越大,在使用这些图片素材的时候就经常会遇到图片太大无法发送或者上传的情况,那么这时候应该怎么缩小图片的大小kb呢?今天来教给大家一个图 ...

  7. VC2010“添加资源-引入JPG图片”会改变图片大小

    结论: 通过VC2010添加JPG图片(添加资源->引入jpg图片)会改变图片大小. 本身只是为了想给对话框添加一个背景图片,试了下bmp的,都没有问题. 为了测试下是否可以加载(用LoadIm ...

  8. css让image不改变大小_如何改变图片大小

    我们进行网页设计的时候图片有时候可以会不符合大小,那我们怎么样才能在代码中实现图片大小的改变呢?本篇文章就来给大家介绍关于如何改变图片的大小? 我们改变图片的大小有两种方法:一种是在HTML标签内更改 ...

  9. html怎么改变图片整体大小,css怎么改变图片大小?

    css怎么改变图片大小?下面本篇文章就来给大家介绍一下使用css改变图片大小的方法,希望对大家有所帮助. 在HTML页面中,图片的显示方法有两种,分别为:img图片,background(背景)图片. ...

最新文章

  1. 第四次作业 (日期和jieba库的运用)
  2. 多巴胺如何驱使我们克服复杂情况、逆境、情绪, 让我们掌控周遭的环境的
  3. 使用PHP对数据库输入进行恶意代码清除
  4. webservice mysql配置_Nginx配置WebService、MySQL、SQL Server、ORACLE等代理
  5. Mysql 共享锁(lock in share mode),排他锁(for update)
  6. excel vba 不可查看
  7. 对MIME格式的邮件文件进行解码获取其可读内容和附件等
  8. SQL Server 中常见的十张系统表
  9. 大学python教材实验七字典与集合答案_2018-08-28 day7 python基础 字典和集合(含作业)...
  10. VTK:可视化之ScalarBarActorColorSeries
  11. Swift5.x的UITableView纯代码演练
  12. Domino Web开发规则之二:DOMINO与开发相关的管理规范
  13. Android Shader类简介之渲染图像示例
  14. IDEA之Initialization failed for ‘http://start.spring.io‘ Please check URL, network and proxy settings
  15. opencv移植到ubuntu
  16. 毕业设计论文-基于matlab的车牌识别系统
  17. 面向开发人员的 ChatGPT 提示词教程 - ChatGPT Prompt Engineering for Developers
  18. GPS坐标系与实际地图坐标系
  19. 软件需求工程五组工作日记——开篇:项目简介
  20. 【unit 8 】ldap

热门文章

  1. ProcessingJoy ——圆点和直线马赛克效果【JAVA】
  2. 怎样在苹果Mac上格式化USB闪存驱动器
  3. usb闪存驱动器_USB闪存驱动器可以可靠地用作手动备份驱动器吗?
  4. MYSQL的操作语句(二)
  5. ipv4访问ipv6
  6. jQuery.print.js 下载 打印机打印
  7. 年轻人找工作莫让“山寨证书”绊住脚
  8. Centos import torchvision 出现 No module named ‘_lzma‘
  9. 教你如何穷养儿子,富养女儿
  10. java解析3d图片 分解为乐高,骨灰级乐高粉讲述:我是怎么用算法给两吨积木自动分类的 概述 扫描仪/“图像缝纫机”......