Zopfli是一个数据压缩算法,可以将数据编码为DEFLATE、gzip或zlib格式。[1]Zopfli被认为是目前压缩率最有效的DEFLATE编码器。[2]2013年2月,Google将Zopfli算法的一个参考实现以Apache许可证2.0发布为自由软件程序库。[3]名称Zöpfli是“Zopf”的瑞士德语指小,一种不加糖的Hefezopf。[4]
属性和使用案例[编辑]
Zopfli可以输出DEFLATE原始数据流,也可以将DEFLATE数据封装为gzip或zlib格式。默认配置的15次迭代可被增加或减少,以平衡压缩耗时与效果。
由于其压缩速度显著较慢,zopfli不太适合实时压缩,一般用于静态内容的一次性压缩。[7][8]典型用途是提供Web内容,包括基于DEFLATE的HTTP压缩,或者使用在基于DEFLATE的文件格式,例如PNG和WOFF字体文件。[9]另一个用途是基于ZIP的软件包文件下载和更新,例如Android应用程序包(APK)和Java存档文件(JAR),尤其是用在移动网络。
技术[编辑]
实现[编辑]
历史[编辑]
Zopfli基于Jyrki Alakuijala的一个算法。Google员工Jyrki Alakuijala和Lode Vandevenne撰写了一个zopfli的参考实现,2013年2月首次向公众发布。版本1.0.0发布于2013年4月25日。[13]之后几个为PNG压缩的适配出现在GitHub,ZopfliPNG在2013年5月被提交到Google的zopfli参考实现。[14]
Zopfli的出现显示,Ken Silverman的KZIP是压缩率最有效的DEFLATE实现,以及7-Zip的deflater是压缩率最有效的自由许可之一。
PNG优化[编辑]
因为PNG使用DEFLATE压缩层,Zopfli算法可用于压缩PNG文件。Zopfli的作者创建了一个名为ZopfliPNG的PNG优化工具。Zopfli算法也已被集成到其他PNG压缩优化工具,例如AdvanceCOMP工具包中的advpng。[15]
ZopfliPNG是目前缩减PNG大小最有效的优化器。
参见[编辑]
参考资料[编辑]
- ^ 1.0 1.1 google/zopfli · GitHub. Github.com. [2015-09-29].
- ^ Debian - Details of package zopfli in jessie. Packages.debian.org. [2015-09-29].
- ^ 3.0 3.1 Compress data more densely with Zopfli - Google Developers Blog. Googledevelopers.blogspot.com. 2013-02-28 [2013-05-01].
- ^ Alexander Neumann. Zopfli: Neue Kompressionsbibliothek von Google | heise Developer. Heise.de. [2015-09-29] (德文).
- ^ A Look At Zopfli, Google's Open Source Compression Algorithm | Lifehacker Australia. Lifehacker.com.au. 2013-03-03 [2015-09-29].
- ^ Alakuijala, Jyrki; Vandevenne, Lode. Data compression using Zopfli (PDF). [2015-09-06].
- ^ Dean Hume. Improved Compression Ratios Using Zopfli. 2015-06-01 [2015-09-06].
- ^ Sharwood, Simon. Google open sources very slow compression algorithm. The Register. 2013.
- ^ Ilya Grigorik. Google Fonts recently switched to using new Zopfli compression algorithm. Google+. 2014-01-09 [2015-06-06].
- ^ Zopfli: Google's new data compression algorithm | Digit.in. Thinkdigit.com. 2013-03-01 [2015-09-29].
- ^ clickalicious/php_zopfli · GitHub. Github.com. 2015-03-03 [2015-09-29].
- ^ CompressSharper - Source Code. Compresssharper.codeplex.com. 2015-08-21 [2015-09-29].
- ^ Release Zopfli-1.0.0. Github.com. 2013-04-25 [2015-09-06].
- ^ ZopfliPNG : Google/zopfli@337d27f. Github.com. [2015-09-29].
- ^ Andrea Mazzoleni. Advance Projects. Advancemame.sourceforge.net. [2015-09-29].
外部链接[编辑]
- Project page on GitHub, online implementation
- Google's Zopfli Compression Algorithm: Extract higher performance from your compressed files – TechRepublic.com
from https://zh.wikipedia.org/wiki/Zopfli, https://en.wikipedia.org/wiki/Zopfli
https://github.com/google/zopfli
https://mobile.slashdot.org/story/13/03/01/2014235/google-publishes-zopfli-an-open-source-compression-library
http://www.telerik.com/blogs/maximize-compression-with-zopfli
https://blog.codinghorror.com/zopfli-optimization-literally-free-bandwidth/
https://blog.codinghorror.com/zopfli-optimization-literally-free-bandwidth/