Zopfli
Zopfli是一个数据压缩算法,可以将数据压缩为DEFLATE、gzip或zlib格式。[2]Zopfli被认为是目前压缩率最高的DEFLATE压缩算法。[3]2013年2月,Google将Zopfli算法的一个参考实现以Apache许可证2.0发布为自由软件程序库。[4]名称Zöpfli是瑞士德语“Zopf”(一种不加糖的花环面包)的指小形式。[5]
首次发布 | 2013年2月 |
---|---|
当前版本 |
|
源代码库 | |
编程语言 | C |
操作系统 | 跨平台 |
类型 | 数据压缩 |
许可协议 | Apache License 2.0 |
网站 | github |
属性和使用案例
Zopfli可以输出DEFLATE原始数据流,也可以将DEFLATE数据封装为gzip或zlib格式。默认配置的15次迭代可被增加或减少,以平衡压缩耗时与效果。
在默认设置下,Zopfli的输出一般比zlib的最大压缩小3%至8%,但消耗约80倍时间。[4][6]Zopfli的解压速度与zlib的解压速度不相上下。[7]
由于其压缩速度显著较慢,zopfli不太适合实时压缩,一般用于静态内容的一次性压缩。[8][9]典型用途是提供Web内容,包括基于DEFLATE的HTTP压缩,或者使用在基于DEFLATE的文件格式,例如PNG和WOFF字体文件。[10]另一个用途是基于ZIP的软件包文件下载和更新,例如Android应用程序包(APK)和Java存档文件(JAR),尤其是用在移动网络。
历史
Zopfli基于Jyrki Alakuijala的一个算法。Google员工Jyrki Alakuijala和Lode Vandevenne撰写了一个zopfli的参考实现,2013年2月首次向公众发布。版本1.0.0发布于2013年4月25日。[14]之后几个为PNG压缩的适配出现在GitHub,ZopfliPNG在2013年5月被提交到Google的zopfli参考实现。[15]
Zopfli的出现显示,Ken Silverman的KZIP是压缩率最有效的DEFLATE实现,以及7-Zip的deflater是压缩率最有效的自由许可之一。
PNG优化
因为PNG使用DEFLATE压缩层,Zopfli算法可用于压缩PNG文件。Zopfli的作者创建了一个名为ZopfliPNG的PNG优化工具。Zopfli算法也已被集成到其他PNG压缩优化工具,例如AdvanceCOMP工具套件中的advpng。[16]
ZopfliPNG是目前缩减PNG大小最有效的优化器。
参见
参考资料
- . 2019年11月27日 [2019年11月28日].
- . Github.com. [2015-09-29]. (原始内容存档于2022-03-18).
- . Packages.debian.org. [2015-09-29]. (原始内容存档于2016-03-04).
- . Googledevelopers.blogspot.com. 2013-02-28 [2013-05-01]. (原始内容存档于2016-03-08).
- Alexander Neumann. . Heise.de. [2015-09-29] (德语).
- . Lifehacker.com.au. 2013-03-03 [2015-09-29]. (原始内容存档于2020-10-24).
- Alakuijala, Jyrki; Vandevenne, Lode. (PDF). [2015-09-06]. (原始内容 (PDF)存档于2016-03-05).
- Dean Hume. . 2015-06-01 [2015-09-06]. (原始内容存档于2017-09-29).
- Sharwood, Simon. . The Register. 2013 [2016-07-03]. (原始内容存档于2019-02-20).
- Ilya Grigorik. . Google+. 2014-01-09 [2015-06-06]. (原始内容存档于2019-01-09).
- . Thinkdigit.com. 2013-03-01 [2015-09-29]. (原始内容存档于2013-07-08).
- . Github.com. 2015-03-03 [2015-09-29]. (原始内容存档于2013-04-11).
- . Compresssharper.codeplex.com. 2015-08-21 [2015-09-29]. (原始内容存档于2017-12-25).
- . Github.com. 2013-04-25 [2015-09-06]. (原始内容存档于2020-10-23).
- . Github.com. [2015-09-29]. (原始内容存档于2019-02-18).
- Andrea Mazzoleni. . Advancemame.sourceforge.net. [2015-09-29]. (原始内容存档于2015-06-28).
外部链接
- Project page (页面存档备份,存于) on GitHub, online implementation (页面存档备份,存于)
- Google's Zopfli Compression Algorithm: Extract higher performance from your compressed files (页面存档备份,存于) – TechRepublic.com