图像格式有许多种不同类型,在互联网上最常见的有JPEG、GIF、BMP、TIFF和PNG。每一种图像格式都有它自己的用途,比如GIF是用于动画的,JPEG是用于高清图片的,这种图片在保存或者调整大小后会自动降低其清晰度,而我们最喜爱的PNG最适合于小型且透明的图片。PNG文件的另一个巨大的优势是这些文件都是无损的,这就意味着你可以在不丢失清晰度的情况下对PNG文件进行压缩。
你在互联网上可以很容易地找到压缩PNG文件的工具,而且大多数,而不是全部都会由于采用不同的算法而生成不同大小的文件,除非这些工具采用了相同的库或 者技术才会生成相同大小的文件。最大程度地减少图像文件大小可以节省传输带宽、减少下载时间,甚至可以获得较高的谷歌页面访问速度的性能分,这是因为“优 化图像”是达到这些目标的第一选择。在这篇文档里,我们将对13个免费的PNG压缩工具(有在线压缩工具、命令行压缩工具和桌面式压缩工具)进行测试,来 找到可生成最小文件大小的那个工具。
我们将使用下面所列出的13个免费的图像压缩工具对一个8位的和一个24位的PNG文件进行压缩。所列的工具包含命令行工具、桌面程序和在线服务。命令行 工具在对大量文件进行自动处理的时候较灵活,不过它要求你要键入全部的命令,包括命令选项和路径。桌面工具较容易使用,这种程序具有图形用户界面,它通常 只需要几个鼠标点击就可以完成压缩。最后是在线服务,它是位于远端服务器上的应用,压缩处理过程是在远端服务器上进行的,而且用户不需要安装任何第三方软 件。
命令行工具
1.adg
adg是AdvanceCOMP应用的一部分,AdvanceCOMP包含有多个对PNG、ZIP、MNG和GZ文件进行再次压缩的免费的工具。 adg从2005年起就没有更新过,不过它的压缩速度和结果却很令你吃惊。具有较慢硬件配置的旧一点的机器进行压缩要花稍长的时间,而新的多核 CPU只需一秒就可生成令你惊讶的结果。
adg的最大压缩的命令如下:
adg.exe -z4 file.png点此处下载AdvanceCOMP.
2.OptiPNG
OptiPNG是另一个开放源代码的命令行PNG压缩工具,它既支持Windows操作系统,也支持Linux操作系统。它的稳定版本和开发版本都可以下 载。要特别注意的是:稳定版本和开发版本的最大压缩的命令行稍有不同。OptiPNG稳定版本的最高压缩比是 -o7,而开发版本却是-o6。如果你试图对开发版本强制使用-o7,那么你将仍然得到的是同使用-o6一样的大小的文件。
OptiPNG稳定版本的最大压缩的命令如下:
optipng.exe -o7 file.pngOptiPNG开发版本的最大压缩的命令如下:
optipng-hg-latest-win32 -o6 file.png点击此处下载OptiPNG。
3.Pngcrush
pngcrush也是一个命令行工具,它试图使用不同的压缩比和PNG过滤方法对PNG图像进行优化。如果你使用了-brute选项,那么Pngcrush将用148种方法对这个图像进行测试,以找到最适合于这张图片的压缩方法。
Pngcrush的最大压缩命令如下:
Pngcrush.exe -brute file.png output.png点击此处下载Pngcrush。
4.PngOptimizerCL
PngOptimizer有一个简单的图形用户界面程序,这时你要做的就是把你要压缩的图像拖到这个程序的窗口就行,同时,pngOptimizer还是 一个可以在命令行提示符下运行的命令行工具。它除了通过清除PNG上的错误或者无用信息来减小PNG文件大小外,还可以对今天已经不常见的动画型PNG格 式(apng)进行处理。为了对图像文件进行优化,你要么指定一个确切的文件名,要么使用*号通配符。
PngOptimizerCL的最大压缩命令如下:
PngOptimizerCL.exe -file:”file.png”点击此处下载PngOptimizerCL。
5.PNGOUT
不像大多数命令行PNG优化工具,PNGOUT不是开放源代码的,这是因为它的压缩算法已经并入它们的商业GUI版本PNGOUTWin 里,PNGOUTWin既支持批量处理,也支持多核CPU。虽然它不是开放源代码的,但是你仍可以找到已经编译好的Windows、Linux、BSD和 Mac OS X上的二进制文件。PNGOUT是最容易是使用的压缩工具之一。因为在默认情况下,即不指定任何命令行选项的情况下,它使用了最高压缩比的Xtreme压 缩算法。
PNGOUT最大压缩命令如下:
pngout.exe file.png点击此处下载PNGOUT。
6.ScriptPNG
ScriptPNG实际上是一个批处理文件,它可以使用高达10种PNG压缩算法对图像文件进行优化。选择超强选项数字9将使用生成最小文件的最大压缩算 法,不过完成这个优化过程需要花费更多的时间。你需要做的所有就是把PNG文件从Explore拖拉到这个程序,然后在9个选项中选择一个。
点击此处下载ScriptPNG。
7.TruePNG
TruePNG不像上面所介绍的某些PNG压缩工具,它只支持PNG文件。 上面所介绍的一些PNG压缩工具在能够获得更小文件的情况下,总试图转换其他图像文件格式,比如JPEG和GIP,为PNG格式。
TruePNG最大压缩命令如下:
TruePNG.exe input.png /o max
点击此处下载TruePNG。
桌面软件8.PNGGauntlet
PNGGauntlet实际上是一个前端工具,它使用三个不同的PNG优化工具(PNGOUT、OptiPNG和DeflOpt)对PNG文件进行了多次 压缩,而不是通过所见的只是用一个工具。三个压缩工具的使用确实增加了压缩PNG文件所花费的时间,不过肯定生成了更小的文件。PNGGauntlet里 的一个很好的功能是在进行批量处理的时候能够自动对多个文件进行排队处理。工具菜单里的默认选项已经是最佳(最大)压缩设置,除非你打算保留PNG元数 据、使用灰度色彩模式等等时候才更改这个值。运行这个软件需要安装微软的.NET Framework 4。
点击此处下载PNGGauntlet。
在线服务9.Kraken
Kraken是一个免费的在线图像优化工具,它既支持无损优化模式,也支持有损优化模式。为了对图像文件进行优化,你要么选择一个你计算机上的图像源文 件,要么粘贴上一些URL。然后PNG图像文件就会被"kraked",处理完成后就会把结果文件上传到实现临时1小时存储的它们自己的CDN上。 Kraken.io所做的一件很好的事情就是可以使用有限的免费的API对Chrome和Firefox进行扩展。使用高级API的付费计划将在几周内发 布。依据我们的测试,Kraken的免费压缩可以与付费的PunyPNG的极限压缩相媲美。
点击此处访问Kraken。
10.pngoptimizer.com
pngoptimize.com是一个非常简单的站点,它允许你对最大为3MB的 图像文件进行上传和压缩。点击浏览按钮,就可以查找要上传的图像文件,然后点击非常靠近广告条的优化按钮,从测试结果来看,我们能够确定 pngoptimizer.com是使用OptiPNG进行PNG文件的压缩的。
点击此处访问pngoptimizer.com
11.PunyPNG
PunyPNG获得了大量的关注,因为与其他在线发布的竞争者一一比 较,PunyPNG去除了更多的字节。这个站点提供免费压缩,当你注册为专业级用户的话,你将自动使用极强的且有损的压缩算法。要对PNG图像文件进行压 缩,请点击上传按钮,免费用户可以每次选择上传15个文件,每个文件最大为150KB。而专业级用户可以每次选择上传50个文件,每个文件最大为 500KB。
点击此处可访问punyPNG。
12. Smush.it
Smush.it 是一个使用最多的在线优化工具,它托管在雅虎开发网,而且这个功能还包含在YSlow中。你会发现几乎每一个应用都支持Smush.it,比如,通过一个 WordPress插件,你可以很容易甚至自动的美化你上传的图片。在Smush.it上有两种方法压缩你的图片,一个是从你的电脑上上传图片,或者提供 图片的确切链接。
访问Smush.it
TinyPNG为了达到更小的文件大小进行了有损压缩,尽管在质量上有轻微的下降,但裸眼看不出来。所以如果你有24位PNG图像,在TinyPNG下压缩将变成为一个8位的PNG文件。它支持一次处理20张图片,每张大小在3MB内。
访问TinyPNG
PNG压缩测试
两个8位PNG文件的压缩测试结果
两个24位PNG文件的压缩测试结果
总结:ScriptPNG对24位PNG文件和8位PNG文件都能生成最小的压缩文件。注 意:ScriptPNG仅仅是一个脚本,它是用几个压缩工具对PNG文件进行了多次压缩优化,因此它与其它命令行工具相比在处理上要花费更长的时间。还需 注意:虽然PNGOUT对8位PNG文件压缩的真的很好,但对24位PNG文件的压缩却是最差的。
上面虽然没有提到,但我们确信在线服务PNGoptimizer.com使用了OptiPNG进行PNG文件压缩的,因为这两种方法在上面所进行的所有四 个测试里都生成了完全相同大小的文件。我们的测试还表明:Kraken图形优化器同只有PunPNG付费用户才可使用的PunyPNG极限压缩方法一样都 生成同样大小的文件。
对使用命令行用户的提示。如果你需要频繁的使用命令行工具而不想每次重复的输入完整的命令行来优化或者压缩PNG图片,这里有一个简单的方法,只需要点击两下鼠标即可。你需要做的事添加一个新的动作在内容目录,它只在你点击到PNG文件时显示。
1.下载ExtMan,解压并执行可执行文件;
2.默认的程序语言是德文,你只需要点击一下美国国旗的表,这样窗口就会切换成英文;
3. 往下滚动滚动条找到拓展名“png”,文件类型为“PNG图片”;
5.你可以在进程栏中输入任何东西,可以是PNG压缩工具的名字或者仅仅是Compress如果你想在命令行中只需要一个单词的话。
6.至于“进行处理的应用”框, 你需要做的就是根据与你所使用的命令行工具的不同输入以下命令行。如果你还没有把命令行工具放置在C:\盘的根目录下,那么请更改工具所在路径。
7.点击Save按钮后将关闭Action窗口,然后再点击Save按钮关闭Edit窗口。
8.无论什么时候你在PNG文件上点击鼠标右键,你将在弹出的菜单上看到多了一个命令,它就是用来压缩PNG文件的。