我想尝试一下 zopfli,因为我在网站上使用了一些静态 .png。
我知道如何创建 .gz 和 .deflate 文件。但是如何创建可以在 FF、Chrome 和 Co 中显示的 png?
zopfli --i1000 _385.png
生成的.gz 文件比使用 pngCrush 创建的文件小约 4%(比原始文件小约 2%)。
答案1
佐普利无法直接处理 PNG。
但你可以使用ehoeks-zopfli-png:
zopfli --png --i1000 logo.png
你必须编译它:
git clone https://code.google.com/r/ehoeks-zopfli-png
cd ehoeks-zopfli-png/
make
./zopfli --png --i1000 logo.png
请注意,这只会使用 DEFLATE 算法重新压缩,您应该先使用其他工具对其进行优化(OptiPNG,png输出等...)和其他技术(这里有点题外,但可以检查 pngquant 以实现 PNG 的智能有损压缩)
压缩后,你仍然可以使用以下工具进一步优化它:默认选项和去绒毛,但据我所知,这只能节省几个字节。
另一个仅适用于 Windows 的解决方案是巴布亚新几内亚Zopli, 包括在脚本PNG以及其他工具。还有optipng-zopfli(optipng plus zopfli)但我还没有尝试过。
更新:PNG 支持正在添加在佐普利
答案2
在等待工具集成时,advancecomp 项目,可在 ubuntu 和 homebrew 存储库中使用。它提供了各种独立于其 MAME 项目来源的压缩工具,但主要感兴趣的是advdef
它可以重新压缩 PNG 文件的压缩区域。一种有效的工作流程是将您的图像通过 PNG 优化器(例如 optipng)(以处理 PNG 特定方面),然后通过 advdef,例如:
optipng -quiet -o2 -nb mypic.png && advdef -z -4 mypic.png
该-4
选项告诉它使用“疯狂”压缩级别,即 zopfli。该项目还包括advpng
,但它不如 optipng 好,所以你最好单独使用 advdef。
可以找到 PNG 优化器和压缩器的详尽比较这里。遗憾的是,TruePNG 仅适用于 Windows,并且不开源。