Pngquant是一款免费的开源和跨平台命令行有损PNG压缩器。它基于可移植的libimagequant库,用C99编写。通过将PNG图像转换为更高效的8位 PNG格式并保留完整的Alpha透明度,它可以显着减小文件大小。您可能已经知道,8位PNG文件通常比24/32位PNG文件小60-80%。使用Pngquant压缩的图像与所有Web浏览器和操作系统完全兼容。Pngquant可以一次压缩一个或多个图像。

功能点

Pngquant具有以下功能。

支持批量转换多个PNG文件。

高品质的调色板生成。

它使用Median Cut量化算法来优化图像。

可以轻松地与shell脚本,GUI和服务器端软件集成。

转换所需质量的图像并跳过无法以所需质量转换的图像。

多核支持和英特尔SSE优化。

安装

Pngquant可以通过多种方式安装。

从发行版的存储库安装Pngquant

Pngquant在大多数Linux发行版的默认存储库中都可用。

在Arch Linux及其变体上,Pngquant可以在[Community]存储库中找到。启用社区存储库并使用Pacman安装它,如下所示。

$ sudo pacman -S pngquant

On Debian, Ubuntu, Linux Mint:

$ sudo apt install pngquant

On Ubuntu systems, you need to enable [Universe] repository to install Pngquant.

To enable Universe repository, do:

$ sudo add-apt-repository universe

On Fedora:

$ sudo dnf install pngquant

On openSUSE:

$ sudo zypper install pngquant

On CentOS:

$ sudo yum install epel-release

$ sudo yum install pngquant

检查已安装的Pngquant版本:

$ pngquant -V

2.7.2 (June 2016)

默认存储库中可用的Pngquant版本可能很旧。如果您想要最新版本,请从源代码编译并手动安装,如下所示。

从源代码安装Pngquant

首先,安装安装必要的依赖项。

On Debian, Ubuntu:

$ sudo apt install git gcc cmake libpng-dev pkg-config

On CentOS, Fedora:

$ sudo yum install git libpng-devel gcc cmake

接下来,git克隆最新版本的Pngquant:

$ git clone --recursive https://github.com/kornelski/pngquant.git

上面的命令将下载Pngquant GitHub存储库的内容并将其保存在当前工作目录中名为“pngquant”的文件夹中。

切换到“pngquant目录:

$ cd pngquant

最后,运行以下命令来编译和安装Pngquant:

$ make

$ sudo make install

Pngquant 默认安装在/usr/local/bin位置。如果要将其安装在另一个目录中运行:

$ ./configure --prefix=dir && make

将“dir”替换为您的路径。您需要先运行此命令,然后运行“sudo make install”命令。

检查Pngquant版本:

$ pngquant -V

2.12.5 (July 2019)

这是最新版本。

有关其他安装方法,请参阅Pngquant 官方安装页面。

使用Pngquant在Linux上压缩PNG图像

Pngquant的使用是微不足道的,并且不需要任何特殊技能来使用它。

我在当前目录中有名为“line.png”的PNG图像文件。让我告诉你它的大小。

$ du -sh line.png

164K ostechnix.png

如您所见,图像大小为164k。

压缩PNG图像

现在让我们使用命令压缩上面的图像:

$ pngquant line.png

上面的命令将压缩ostechnix.png文件并将其保存为名为“line-fs8.png”的新文件。默认情况下,Pngquant将使用与输入文件名相同的输出文件名,最后使用suffix -or8.png或-fs8.png。这意味着它不会覆盖源文件。如果您对压缩率不满意,只需删除压缩文件并保留原始压缩文件即可。

让我们再次检查压缩的图像文件大小:

$ du -sh line-fs8.png

56K line-fs8.png

Pngquant将164k尺寸的图像缩小到56k。这确实是一份好工作。使用任何图像查看器打开图像并进行比较。原始图像和压缩图像之间的质量差异不大。两个图像看起来几乎相同!

压缩时显示状态消息

默认情况下,Pngquant在压缩图像时不会显示幕后发生的事情。如果要查看状态消息,请使用以下命令:

$ pngquant line.png --verbose

line.png:

read 163KB file

made histogram...28736 colors found

selecting colors...8%

selecting colors...16%

selecting colors...66%

selecting colors...100%

moving colormap towards local minimum

eliminated opaque tRNS-chunk entries...27 entries transparent

mapped image to new colors...MSE=4.782 (Q=84)

writing 256-color image as line-fs8.png

Quantized 1 image.

压缩多个PNG图像

Pngquant还可以转换多个图像。以下命令将压缩当前工作目录中的picture1.png和picture2.png。

$ pngquant picture1.png picture2.png

此外,我们可以移动目录中的所有文件并一次压缩它们。例如,要转换名为“/ home / sk / images”的文件夹中的所有图像,请运行:

$ pngquant /home/sk/images/*.png

更改输出文件名后缀

就像我已经说过的那样,输出文件名与输入名称相同,只是它以“-fs8.png”,“ - or8.png”结尾。但是,您可以根据需要更改后缀。

$ pngquant line.png --ext linux.png

此命令将压缩ostechnix.png文件并将其保存为line.png。

如果压缩文件的大小大于原始文件,则跳过保存文件

如果转换后的文件大于源文件,那么压缩点是什么?这种转换不值得,所以我们可以像下面这样跳过它。

$ pngquant --skip-if-larger line.png

上面的命令只会保存转换后的文件,如果它小于原始文件。

保存转换后的文件在不同的路径

默认情况下,Pngquant会将输入和输出图像文件保存在同一目录中。如果要将输出文件保存在其他位置,则命令为:

$ pngquant line.png --output Documents/output.png

此命令将压缩ostechnix.png并将其保存为output.png在Documents 目录。

以自定义质量压缩图像

Pngquant尽可能压缩图像。我们还可以手动设置图像的质量。Pngquant允许我们使用最小和最大参数将图像质量设置在0(最差)到100(完美)的范围内。

以下示例将最低图像质量设置为60,将最高质量设置为80。

$ pngquant --quality=60-80 image.png

如果转换导致质量低于最低质量,则不会保存图像。

剥离图像元数据

图像元数据是关于法师的一组数据。它包括有关图像的所有信息,例如图像格式,相机设置,DPI,图像的日期和时间,标题和注释,地理位置等等。请参阅以下文章以了解如何查看图像元数据。

如果您没有元数据,可以使用下面的pngquant简单地删除它。

$ pngquant --strip image.png

有关详细信息,请参阅手册页。

$ man pngquant

linux压缩软件图形,Linux上压缩PNG图像 互联网技术圈 互联网技术圈相关推荐

  1. 7z(p7zip)压缩软件在Linux下的安装和使用

    为什么80%的码农都做不了架构师?>>>    Evernote Export 7z(p7zip)压缩软件在Linux下的安装和使用 1) 简介 7z,全称7-Zip, 是一款开源软 ...

  2. win10 使用Xming+Putty显示Linux下软件图形界面

    在windows下使用Xming+Putty显示Linux下软件图形界面 转载 ############# 安装Xming 和 Putty: ############# Xming是一个在Micros ...

  3. linux图形界面压缩软件,p7zip 压缩软件 for Linux

    p7zip 软件基于 GNU 次要公共许可协议(Lesser General Public License) 之下发布,是一款完全免费的压缩解压软件.p7zip 是一款免费开源的解压缩软件,命令行选项 ...

  4. 在 windows 下使用 Xming+Putty 显示 Linux 下软件图形界面

    From: http://www.blogjava.net/ivanwan/archive/2012/04/26/376670.html From: http://www.bubuko.com/inf ...

  5. 在windows下使用Xming+Putty显示Linux下软件图形界面

    From: http://www.blogjava.net/ivanwan/archive/2012/04/26/376670.html From: http://www.bubuko.com/inf ...

  6. manjaro linux下载软件,manjaro linux

    manjaro linux下载.manjaro linux是基于Arch Linux开发的Linux操作系统!对于裸服务器.虚拟机.IaaS 和 PaaS 方面都得到了加强,而且内置了强大的数据中心满 ...

  7. linux安装软件w,Linux软件安装小结

    一.Linux中软件安装的方式 在Linux中一切皆文件,软件都是由源码编译生成的二进制文件.因此在Linux中安装软件有多种方式,一种是使用软件管理器安装软件,二是使用前端软件管理器安装,三是自行编 ...

  8. linux 圣经软件,Ubuntu(Linux)下好用的中文圣经

    其他系统有很多圣经软件.Ubuntu上,有个Xiphos是个不错的圣经软件,有好多不同的语言,但好像没有中文. 感谢主,我今天新发现了一个支持中文的圣经软件,介绍一直安装步骤.这个名叫中英文圣经 CE ...

  9. 搞定音频文件过大的问题,这些音频压缩软件帮你轻松压缩

    当我们想在手机或电脑上存储大量的音乐文件的时候,是否会遇见存储空间不足的情况.其实这个时候,我们可以用音频压缩软件把音乐文件的大小减小到合适的范围,以便在设备上存储更多的音乐.那你们知道可以压缩音频文 ...

最新文章

  1. 蓝桥杯:入门训练 圆的面积
  2. idea tomcat热部署_IDEA设置热部署
  3. 波卡链Substrate (5)托盘Pallets进阶
  4. Oracle入门(十四.8)之迭代控制:基本循环Loop
  5. 手把手教你架构3d游戏引擎pdf_白鹭引擎团队即将发布 Egret Pro,并公布后续路线图...
  6. ZZULIOJ 1096: 水仙花数(函数专题)
  7. Resid 学习笔记1-基础命令
  8. Sharepoint 弹出消息提示框
  9. 计算机科学导论_学长说专业 | 计算机科学与技术
  10. 【python】习题 1-4周
  11. 以太坊 私链 节点连接(window)
  12. CKA考题[k8s1.24]
  13. linux eth0网卡配置详解
  14. C++ 打印表格到屏幕或文件
  15. 【FinE】单利与复利
  16. 拼多多一晚被薅千万,倒赚276亿:一次蓄意营销的阴谋?
  17. matlab中的rand函数(用于产生随机数)
  18. UNIX的spctl命令
  19. oracle spatial sdo_util,Oracle spatial抽稀函数(SDO_UTIL.SIMPLIFY)详解
  20. mgetnx redis_Redis几乎所有命令都在这了,还说你不会?

热门文章

  1. android studio对于错误拼写/不识别的英文单词,给予波浪提示。
  2. 把多个ROC曲线画在一张图上
  3. [Maya API] 一、基本类型介绍
  4. 无题(2011.9.28)
  5. AI大模型,驶向产业何方?
  6. 周鸿祎:互联网公司未来的发展方向
  7. 关于炉石传说“召唤”的判定机制
  8. PTA_2017年天梯赛大区赛
  9. 双目立体视觉之深度估计
  10. HTML+CSS+jquery代码实例:水波纹效果与纯HTML CSS和jquery(拿来就能用)