以下 不完全/简要(使劲抄) 摘自 Leanify的Readme (渣翻确信),仅用于做个记录。
Leanify 是个轻量无损的文件 压缩器(minifier) / 优化器(optimizer)。
它能移除没用的数据(如调试信息(debug infomation)、注释(comments)、元数据(metadata)等)并再压缩文件以缩小体积,而且不会降低图像的品质哦。
使用Leanify前请先备份文件!
基于 ZIP。
注意修改
APK
中的文件会破坏数字签名,要安装需要重新签名。如果你不想修改
APK
中的文件就使用-d 1
选项。
不支持 Office文档 1997-2003 (.doc, .xls, .ppt)。
查找 data:image/*;base64
并处理 base64 编译嵌入的图像。
基于 ZIP。
基于 ZIP。
基于 XML。
处理嵌入的图像。
这是QQ的一种图像容器格式。
处理内部的图像。
处理内部的文件并重压缩Deflate流。
移除所有可选的部分:FEXTRA
, FNAME
, FCOMMENT
, FHCRC
。
将 256x256 的BMP转换为 PNG。
处理内部的 PNG,如果存在。
基于 ZIP。
移除所有应用程序的标记(比如EXIF
(用 --keep-exif
来保留),ICC profile
,XMP
)和注释(comments)。
使用 mozjpeg
优化。
移除所有调试信息:
基于 OpenDocument 和 PNG。
处理嵌入的资源。
移除可执行文件中的 Relocation Table
。
移除不正式的 Rich Header
。
重叠 PE Header
和 DOS Header
。
移除所有辅助块,除了:
tRNS
:透明的信息 (transparent information)fdAT
, fcTL
, acTL
:这些块由 APNG
使用 (These chunks are used by APNG
)npTc
:安卓的9Patch图像 (Android 9Patch images (*.9.png) )使用 ZopfliPNG
优化。
这是QQ的一种归档格式。
处理内部的所有文件。
处理嵌入的图像。
使用 LZMA
重压缩。
移除元数据标记 (Metadata Tag)。
基于 XML。
移除元数据。
缩小属性中的空格。
移除空的属性。
移除空文本元素和容器元素。
处理内部所有文件。
移除所有注释、没用的空格 (spaces)、缩进 (tabs)、换行(line breaks)。
基于 ZIP。
注意修改
xpi
中的文件会破坏数字签名,要安装需要重新签名。
处理内部所有文件并用 Zopfil 重压缩Deflate流。
如果 DEFLATE
让文件变大就使用 STORE
方法。
移除 Local file header
中多余的字段 (extra field)。
移除 Data descriptor structure
,将那些信息写入 Local file header
。
移除 Central directory file header
中多余的字段和文件注释。
移除 End of central directory record
中的注释。
用法: leanify [options] 文件路径
-i, --iteration <iteration> 越多的迭代次数得到更好的结果,但是也更耗时,默认是15。
-d, --max_depth <max depth> 最大递归深度,默认无限制,设为1将会禁用递归压缩。
-f, --fastmode 快速模式,不会再压缩。
-q, --quiet 无输出信息。
-v, --verbose 详细输出信息。
--keep-exif 不移除Exif。
Visual Studio 2015+
使用 Leanify.vcxproj
gcc 5+
build_gcc.bat
或 mingw32-make