图像格式有许多种不同类型,在互联网上最常见的有JPEG、GIF、BMP、TIFF和PNG。每一种图像格式都有它自己的用途,比如GIF是用于动画的,JPEG是用于高清图片的,这种图片在保存或者调整大小后会自动降低其清晰度,而我们最喜爱的PNG最适合于小型且透明的图片。PNG文件的另一个巨大的优势是这些文件都是无损的,这就意味着你可以在不丢失清晰度的情况下对PNG文件进行压缩。

你在互联网上可以很容易地找到压缩PNG文件的工具,而且大多数,而不是全部都会由于采用不同的算法而生成不同大小的文件,除非这些工具采用了相同的库或 者技术才会生成相同大小的文件。最大程度地减少图像文件大小可以节省传输带宽、减少下载时间,甚至可以获得较高的谷歌页面访问速度的性能分,这是因为“优 化图像”是达到这些目标的第一选择。在这篇文档里,我们将对13个免费的PNG压缩工具(有在线压缩工具、命令行压缩工具和桌面式压缩工具)进行测试,来 找到可生成最小文件大小的那个工具。

我们将使用下面所列出的13个免费的图像压缩工具对一个8位的和一个24位的PNG文件进行压缩。所列的工具包含命令行工具、桌面程序和在线服务。命令行 工具在对大量文件进行自动处理的时候较灵活,不过它要求你要键入全部的命令,包括命令选项和路径。桌面工具较容易使用,这种程序具有图形用户界面,它通常 只需要几个鼠标点击就可以完成压缩。最后是在线服务,它是位于远端服务器上的应用,压缩处理过程是在远端服务器上进行的,而且用户不需要安装任何第三方软 件。

命令行工具

1.advpng

advpng是AdvanceCOMP应用的一部分,AdvanceCOMP包含有多个对PNG、ZIP、MNG和GZ文件进行再次压缩的免费的工具。 advpng从2005年起就没有更新过,不过它的压缩速度和结果却很令你吃惊。具有较慢硬件配置的旧一点的机器进行压缩要花稍长的时间,而新的多核 CPU只需一秒就可生成令你惊讶的结果。

advpng的最大压缩的命令如下:

advpng.exe -z4 file.png

点此处下载AdvanceCOMP.

2.OptiPNG

OptiPNG是另一个开放源代码的命令行PNG压缩工具,它既支持Windows操作系统,也支持Linux操作系统。它的稳定版本和开发版本都可以下 载。要特别注意的是:稳定版本和开发版本的最大压缩的命令行稍有不同。OptiPNG稳定版本的最高压缩比是 -o7,而开发版本却是-o6。如果你试图对开发版本强制使用-o7,那么你将仍然得到的是同使用-o6一样的大小的文件。

OptiPNG稳定版本的最大压缩的命令如下:

optipng.exe -o7 file.png

OptiPNG开发版本的最大压缩的命令如下:

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

13. TinyPNG

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图片”;

4.双击png拓展名然后点击New Action按钮。

5.你可以在进程栏中输入任何东西,可以是PNG压缩工具的名字或者仅仅是Compress如果你想在命令行中只需要一个单词的话。

6.至于“进行处理的应用”框, 你需要做的就是根据与你所使用的命令行工具的不同输入以下命令行。如果你还没有把命令行工具放置在C:\盘的根目录下,那么请更改工具所在路径。

  • advpng: c:\advpng.exe -z4 "%1"(将覆盖已有文件)
  • OptiPNG: c:\optipng.exe -o7 -backuup "%1" (给已有文件创建备份文件,增加.bak扩展名)
  • pngcrush: c:\pngcrush.exe -brute -e_compressed "%1" (以原始文件名加_compressed.png的文件名保存压缩所得PNG文件)
  • pngOptimizerCL: c:\PngOptimizerCL.exe -BackupOldPngFiles -file:%1"(通过给文件名开始增加下划线字符来备份原来的PNG文件)
  • PNGOUT: c:\pngout.exe "%1" out.png(保存压缩所得的PNG文件为out.png)
  • ScriptPNG: c:\scriptpng\ScriptPNG.cmd "%1" (按数字9键,接着就覆盖了已有的PNG文件)
  • TruePNG: c:\TruePNG.exe "%1" /o max /out out.png(保存压缩所得的PNG文件为out.png)

7.点击Save按钮后将关闭Action窗口,然后再点击Save按钮关闭Edit窗口。

8.无论什么时候你在PNG文件上点击鼠标右键,你将在弹出的菜单上看到多了一个命令,它就是用来压缩PNG文件的。

原文地址:http://www.open-open.com/news/view/e56e90

【转】【PNG压缩工具】PNG 图像的优化及压缩工具介绍的更多相关文章

  1. 13 个免费的 PNG 图像的优化和压缩工具

    图像格式有许多种不同类型,在互联网上最常见的有JPEG.GIF.BMP.TIFF和PNG.每一种图像格式都有它自己的用途,比如GIF是用于动画的,JPEG是用于高清图片的,这种图片在保存或者调整大小后 ...

  2. 网站性能优化— WebP 全方位介绍

    谈到优化网站性能时,主要目标之一就是减少要发送到浏览器的数据量(即 payload).而当前,图片通常是页面构成中最耗费流量的部分,因此降低图片的大小是一个最为有效的优化网页前端性能的办法. 有很多工 ...

  3. WEB开发性能优化--核心定义介绍篇(1)

    推荐理由 随着 互联网的蓬勃发展,并且伴随着产品功能的越来越复杂,对于技术人员来说最大的挑战就是如何在保证业务快速发展的同时,也可保证不断复杂的业务对用户体验的影响,其中对用户来说最重要的体验指标是如 ...

  4. Linux 首先基本包安装(vim啊什么的),源,源优化,项目架构介绍, (LNMuWsgi)Django项目相关软件mysql,redies,python(相关模块)安装配置测试

    内容 补充: 查看已启动服务的端口 netstat -tulnp |grep (方式1) ss -tulnp|grep (方式2) 前期铺垫: . Linux要能上网 . 掌握Linux软件包安装方法 ...

  5. PLSQL_性能优化索引Index介绍(概念)

    2014-06-01 BaoXinjian

  6. SharpImage图像特效和合成类库介绍

    SharpImage是用于.NET(C#.VB)的专业图像特效以及图像合成类库.借助它,您可以快速实现Photoshop滤镜效果以及图层合成. 1.内置50+种图像特效滤镜.(如亮度.对比度.负片.图 ...

  7. 影像优化 OptimizeRaster工具包介绍

    Esri OptimizeRasters是一个高效.可配置的开源工具包. OptimizeRasters提供了以下功能: 影像格式转换和压缩.支持输出优化栅格格式:MRF.分块TIFF.云存储优化Ge ...

  8. ASP.NET(支持 ASP.NET MVC)性能优化包 - combres 介绍

    项目地址:https://github.com/buunguyen/combres Overview Combres (previously hosted in CodePlex) helps you ...

  9. 瞎谈CNN:通过优化求解输入图像

    本文同步自我的知乎专栏: From Beijing with Love 机器学习和优化问题 很多机器学习方法可以归结为优化问题,对于一个参数模型,比如神经网络,用来表示的话,训练模型其实就是下面的参数 ...

随机推荐

  1. 基础学习day10--异常、包

    一.异常 1.1.异常定义 异常:--不正常,程序在运行时出现不正常情况 异常由来:其实也是现实生活中一个具体的事物,马可以通过JAVA的类的形式表现描述,并封装成类. Java对不正常情况描述后的, ...

  2. Cocos2d入门--2--三角函数的应用

    其实,三角函数的知识点是初中的数学基础.但是在编程里合理的利用的话,也会很好玩的,可以制作出很多有趣的动画特效. 首先要注意的是 角度 和 弧度 的转换. 360度 = 2×PI弧度 180度 =   ...

  3. 使用JDBC对数据库进行查询的前期准备工作,以及简单的JDBC访问MySQL数据库(Mac)

    首先JDBC的前期数据库数据准备: 1,打开链接好MySQL的Workbench软件,新建一个数据库: 2.然后打开数据库对应的代码编辑窗口,建立表和插入数据记录: 3.然后是打开关于javaWeb编 ...

  4. Swift 中的函数

    学习来自<极客学院:Swift中的函数> 工具:Xcode6.4 直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会 练习一: import Foundation //函数 ...

  5. C++中的多态与虚函数的内部实现

    1.什么是多态         多态性可以简单概括为“一个接口,多种行为”.         也就是说,向不同的对象发送同一个消息, 不同的对象在接收时会产生不同的行为(即方法).也就是说,每个对象可 ...

  6. java微信接口之五—消息分组群发

    一.微信消息分组群发接口简介 1.请求:该请求是使用post提交地址为: https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_t ...

  7. QQ JS省市区三级联动

    如下图: 首先写一个静态的页面: <!DOCTYPE html> <html> <head> <title>QQ JS省市区三级联动</title ...

  8. 大型文档源文件拆分编辑编译\include{filename}

    大型文档,如果把所有的文字都录入在同一个.tex文件中,那个文件的体积是不可估量的,文件的结构式混乱不堪的,文字的定位也是令人头疼的.幸亏latex提供了结构化的处理命令---include. 命令\ ...

  9. 查看Linux服务器内存使用情况

    一个服务器,最重要的资源之一就是内存,内存够不够用,是直接关系到系统性能的关键所在. 本文介绍如何查看Linux服务器内存使用情况, 1.free命令 free -m [root@localhost ...

  10. [转载]在iTOP-4412开发板上调试helloworld应用

    本文转自迅为论坛:http://www.topeetboard.com 1.安装ADB驱动 在开发板上调试 Android 应用,首先要安装 ADB 驱动. 通过“SDK Manager.exe”来安 ...