最好的PNG压缩软件?[关闭]


22

我一直在尝试以PNG图像格式压缩图像,并且从不同的应用程序获得了不同的结果。作为参考,我尝试压缩的图像是该网站的屏幕截图。这是原始图像下载

到目前为止,以下是我得到的一些最好的结果(原始图像是239KB):

PNGGauntlet (Xtreme! / None filter) ...................... 141KB
FastStone Capture v5.3 (16M / MAX/ No filter) ............ 166KB
Paint.NET 3.36 (Autodetect) .............................. 185KB
PNGGauntlet (Xtreme! / Auto filter) ...................... 208KB
IrfanView (PNGOUT 2 passes w/default) .................... 211KB
XnView (Export / 9 / Sub filter) ......................... 228KB
Photoshop CS1 (Save for Web / PNG24) ..................... 232KB
IrfanView (Standard save / 9) ............................ 240KB
XnView (Standard save / 9) ............................... 240KB
IrfanView (Save for Web / Best) .......................... 242KB

FastStone Capture v5.3 (16M / MAX/ Paeth filter) ......... 248KB
IrfanView (Save for Web / Optimal 256 / Xiaolin / Best) ..  81KB

有的摆弄与PNGGauntlet导致最好的结果,虽然花了年龄压缩。FastStone和Paint.NET一样都在做一些有趣的事情,因为它们在PNGGauntlet提升魔术效果所需时间的一小部分中就可以得到结果。我将最后两个结果分开以进行对比(请参阅Paeth过滤器似乎引起了问题)。还要注意Irfan的托盘化256色版本:通常,这是我要使用的选项,但是我在这里测试TrueColor结果。

有没有其他人得到可以胜过最好结果的建议,也可以解释滤镜的作用,因为它们似乎严重影响了结果,具体取决于图像类型。


即使以建设性的方式提出问题(也许标题中的“最好的”除外),不幸的是它也产生了开放式的答案列表,这就是为什么我现在将其关闭。
slhck

2
为了将来参考,该问题的可接受形式是什么?记录下来,我发现答案非常有用和有建设性,因此非常适合该网站。我谨表示,在这种情况下,结束这一判决是错误的判断。自然的上/下投票在这里可以正常工作。如果出现其他工具,则您已经拒绝了我们在此处学习该工具的机会。开放式在这里很有用。
Charles Roper

自2009年以来,发生了一些变化。Stack Exchange明确表示不再欢迎不限成员名额的问题(例如,“什么是XZY的最佳软件?”),因为格式不是专门为此设计的,也不应该是投票竞赛,但是一个针对实际问题的问答站点,并提供了一组封闭的答案。现在,您的问题本身还不错,但是我们绝对不想要那里列出所有PNG优化程序的列表,根据定义,这不是建设性的。维基百科覆盖了您。
slhck

1
我知道这个问题已经存在很长时间了,您发现答案很有用-而且,您作为这个社区的成员比我长久了-但是您必须了解政策已经发生了巨大变化。就像我说的那样,您的问题还不错,您甚至已经要求对过滤器的工作原理进行解释,但似乎并没有鼓励正确的答案。
slhck

Pingo声称可以提供从最快到最强的大量选项,希望能得到检验:css-ig.net/pingo还有实验性的ZPng-将PNG容器与Facebook的Zstd编解码器一起使用。尽管文件不是PNG,但它仍然是无损的,声称可以以6%的时间获得PNG大小的66%
Arioch'The

Answers:



11

我只用过pngcrush,但是效果很好,并且有很多选择。


我检查了这里提到的大部分内容,并选择了pngcrush。告诉它剥离所有其他数据部分并以蛮力模式运行(如果有时间/资源),可以为我的图像集(大多数线条艺术类型-黑白/灰色,黑色或黑色的大写部分)提供最佳,最可靠的结果白色)。
Goyuix

由于它是在命令行上运行的,因此很容易将其构建到构建序列中,这很好。
Rich Bradshaw

7

为了快速进行基准测试,我从互联网上的不同网站上下载了170个随机PNG,总计约8MB。结果如下:

Original: 8,403,619 bytes total
PNGCrush: 7,398,194 bytes total
 Optipng: 7,340,167 bytes total
  PNGOUT: 6,938,205 bytes total

因此,如果大小是您的主要目标,那么PNGOUT(或任何基于它的GUI)似乎是最佳选择。这些都是无损转换。


5

使用ScriptPNG可获得最佳结果。这是一个Windows批处理脚本,它利用各种PNG实用程序来查找任何给定图像的最佳压缩率。它通常会从已压缩的图像中挤出10-100个字节。作者还有其他实用程序,还有许多关于png / jpeg压缩,PNG测试和比较的文章。

它具有多种模式:

  • 最快 Xtreme (速度与尺寸模式)
  • PNG24 (特定于PNG24 + A)
  • PNG8 (特定于PNG8)
  • APNG (动画PNG)

4

与此处提到的大多数其他压缩器相反,TinyPNG通过使用有损压缩来压缩PNG文件。因此,它可以实现更好的文件大小缩小率。


3

PNGGauntlet是一个GUI包装PNGOUT,如果你看看这个页面有对Irfanview的一个PNGOUT.DLL插件,如果你喜欢,作为一个接口,或者如果您希望由系统自动压缩,你可以在命令行或在脚本中使用PNGOUT作为构建/部署过程的一部分。


3

我喜欢OptiPNG。除了源代码和命令行实用程序外,还有Windows资源管理器,Paint.NET的optipng插件,Mac用户的几个前端以及其他一些项目(Apache Ant,Eclipse;请参阅主页上的“相关项目”部分)。


2

谁能解释一下过滤器的作用

他们在规范中描述

它们更改了保存图像行的方式。图像可以存储相邻像素之间的差异,而不是保存原始RGB值(或调色板索引)。如果您的图像带有渐变,这可能会使数据更适合压缩。



2

在我的测试中,最好的在线工具是http://compresspng.com


4
如果您与此网站有任何隶属关系,请声明。另外,仅链接答案不是好的答案。请说明为什么您认为这是解决方案。
ChrisF
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.