5个版本 (稳定)
3.0.3 | 2023年12月18日 |
---|---|
3.0.2 | 2023年10月13日 |
3.0.1 | 2022年11月13日 |
3.0.0 | 2022年8月17日 |
0.0.0 |
|
#78 in 图像
每月378次下载
77KB
1.5K SLoC
pngquant 3 
pngquant 是一个PNG压缩器,通过将图像转换为更高效的8位PNG格式(带有alpha通道)(通常比24/32位PNG文件小60-80%)来显着减小文件大小。压缩图像完全符合标准,并且所有网络浏览器和操作系统都支持。
此 是官方的 pngquant
仓库。压缩引擎也可以 作为可嵌入库 提供。
用法
- 批量转换多个文件:
pngquant *.png
- Unix样式stdin/stdout链式操作:
… | pngquant - | …
要进一步减小文件大小,请尝试 oxipng, ImageOptim 或 zopflipng。
功能
- 高质量的调色板生成
- 支持伽玛校正和预乘alpha的高级量化算法
- 独特的抖动算法,不会向图像添加不必要的噪声
- 可配置的质量级别
- 自动查找所需颜色数,并可以跳过无法以所需质量转换的图像
- 快速、现代的代码
- 基于可移植的 libimagequant库
- C99,没有为遗留系统或编译器的工作区(除Visual Studio外)
- 多核支持(通过OpenMP)和Intel SSE优化
选项
有关完整列表,请参阅 pngquant -h
。
--quality min-max
min
和 max
是介于 0(最差)到 100(完美)之间的数字,类似于 JPEG。pngquant 将使用所需的最少数量的颜色来满足或超过 max
质量。如果转换后的质量低于 min
质量,则不会保存图像(如果输出到 stdin,则输出 24 位原始数据),pngquant 将以状态码 99 退出。
pngquant --quality=65-80 image.png
--ext new.png
设置输出文件名的自定义扩展名(后缀)。默认情况下使用 -or8.png
或 -fs8.png
。如果您使用 --ext=.png --force
选项,pngquant 将覆盖输入文件(请谨慎使用)。
-o out.png
或 --output out.png
将转换后的文件写入指定的路径。当使用此选项时,只允许单个输入文件。
--skip-if-larger
如果转换不值得,则不写入转换后的文件。
--speed N
速度/质量权衡从 1(最慢,最高质量,文件最小)到 11(最快,质量不太一致,轻微压缩)。默认值是 4。建议保留默认值,除非您需要实时生成图像(例如地图瓦片)。对于 256 种颜色,较高的速度是可行的,但处理较低数量的颜色不太好。
--nofs
禁用 Floyd-Steinberg 杂点。
--floyd=0.5
控制杂点级别(0 = 无,1 = 全部)。请注意,需要 =
字符。
--posterize bits
通过位数减少调色板的精度。当图像将在低深度的屏幕上显示时使用(例如 16 位显示器或 ARGB444 格式的压缩纹理)。
--strip
不要复制可选的 PNG 块。在 Mac 上(当使用 Cocoa 读取器时)始终删除元数据。
有关选项的完整列表,请参阅 手册页 (man pngquant
)。
许可证
pngquant 具有双重许可权
-
根据 GPL v3 或更高版本,附带必须保留的版权声明,以保留代码的较旧部分。
-
或者商业许可证,用于非 GPL 软件(例如封闭源代码或 App Store 分发)。您可以通过 Super Source 获取许可证。如有任何疑问,请发送电子邮件至 kornel@pngquant.org。
依赖关系
~4MB
~72K SLoC