这是 pngcrush 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
pngcrush — 优化(或修改)PNG(便携式网络图形)文件。
概要
png粉碎 [选项] [infile.png] [输出文件.png]
png粉碎 -e 分机 [选项] [文件1.png] [文件2.png] ...
png粉碎 -d DIR [选项] [文件1.png] [文件2.png] ...
商品描述
png粉碎 是 PNG(便携式网络图形)文件的优化器。 它的主要目的是
减少文件的 IDAT 块(或流)的大小。 png粉碎 也可以用来
修改 PNG 的辅助块(例如:透明度信息或文本注释)。
熟悉 PNG(发音为“ping”)格式可能对使用
png粉碎. png粉碎 具有合理的默认值,因此在没有选项的情况下运行可能会产生较小的
文件。 本文档在需要理解的地方简要描述了 PNG 格式
png粉碎. 有关完整的文档,请参阅:
http://www.libpng.org/pub/png/.
PNG 的实际像素数据包含在一个或多个 IDAT 块中。 制作 IDAT
块 PNG 编码器获取原始像素数据,使用 5 种不同的过滤器之一对其进行过滤(请参阅
部分 “筛选 类型” ) 然后压缩它。 png粉碎 通过以下方式减小 PNG 文件的大小
从输入文件中使用的过滤器或压缩方法中选择不同的过滤器或压缩方法。
png粉碎 尝试多种过滤/压缩方法并比较结果的大小
IDAT 块。 选择具有最小 IDAT 块的过滤/压缩方法作为
输出文件。 过滤器和压缩级别 png粉碎 尝试由命令控制
线选项。 所有的过滤方法和压缩级别都是无损的; 他们会
不会降低图像质量。
除了减小 PNG 文件的大小之外, png粉碎 可以修改辅助块。
辅助块是可选信息,包括透明度 (tRNS)、伽玛 (gAMMA)、
标准 RGB 色彩空间一致性 (sRGB) 或文本信息(iTXt、tEXt 或 zTXt)。
有关操作这些块的详细信息,请参阅相关的命令行选项。
配置
-已经 尺寸
如果文件有一个大于整数的 IDAT 块 尺寸,会被考虑
已经粉碎,不会进一步加工。
-位深度 n
强制输出位深度为 n. 见章节 “颜色 类型” 对于位深度
限制。
-背景 r g b
指定图像的默认背景颜色。 一些 PNG 查看器将使用
显示图像时的这个背景。 背景由 r, g 和 b
0 到 (2^bitdepth)-1 之间的整数。 对于输出颜色类型 0 和 4(灰色,请参阅
部分 “颜色 类型” ) 绿色指数用作
背景。
-蛮横的 使用蛮力,尝试 114 种不同的过滤/压缩方法 [11-124]。 这个
选项非常耗时,通常不值得。 你可以限制
此选项用于某些过滤器类型、压缩级别或策略
跟着它 -f 过滤, -l 水平, or -z 战略。 对于 例:
png粉碎 -brute -f 0 infile.png
将仅尝试使用过滤器类型 0 的方法。
-c 类型 将输出图像颜色类型设置为 类型, [0, 2, 4, 或 6] 之一(见章节
“颜色 类型” )。 未来版本 png粉碎 也将允许颜色类型 3,如果
输入文件中存在 256 种或更少的颜色。 颜色类型 4 和 6
如果输入文件没有 alpha,则用不透明的 alpha 通道填充
信息。 您可以使用 0 或 4 将颜色转换为灰度。 使用 0 或 2
删除不需要的 Alpha 通道。 默认是使用与输入相同的颜色类型
文件中。
-d DIR 为所有输出文件指定一个目录。 所有输出文件都将具有相同的
名称作为它们各自的输入文件。
-斗 将图像伽马加倍。 这用于在 PhotoShop 5.0c5.02 中修复伽马
文件。 有人声称 PS5 的错误实际上比这更复杂,
以某种未指明的方式。
-e 分机 指定一个新扩展 分机 对于所有输出文件。
-出口 部队 png粉碎 完成后调用 exit() 而不是 return() 。 这是
作者不清楚为什么存在这个选项。
-f 过滤 指定 过滤 (见节 “筛选 类型” ) 与中指定的方法一起使用
前面的 -m or -蛮横的 选项。 有效的过滤器类型是 [0-4] :使用指定
filter,[5]:使用自适应过滤。
-固定 修复其他致命条件,例如错误的 CRC。 CRC(循环冗余
检查)存在于每个块中,并且可以提醒解码器损坏的数据。
-力 即使大于输入,也要写一个新的输出文件。 否则输入文件将
如果它小于任何生成的文件并且没有块,则将其复制到输出
要求添加、删除或更改。
-g 伽玛 仅当输入文件没有 gAMA 块时,要在 gAMA 块中插入的值。 到
替换现有的 gAMA 块,使用 -replace_gamma 选项。 一些解码器
将使用 gAMA 块来更准确地显示图像。 伽玛 有关
输入样本的输出强度(input_sample = light_out GAMMA)。 伽玛
可以是 0 到 2 32 之间的任何整数,并被解释为 GAMMA*100000。 为了
例如,如果您想要 1/2.2 的 GAMMA,则应输入 45455 作为 伽玛.
-h 显示帮助和法律声明。
-itxt 乙|甲 关键词 文本
插入一个(未压缩的)iTXt 块。 乙|甲 指示块是否应该是
插入 b之前或 a在 IDAT 块之后,(参见部分 “文本 块” ).
-保持 块名称
保持命名块 块名称 即使 PNG 数据流无效。
目前只 SIG 被认为是可接受的值。
-l 水平 zlib 压缩 水平 在过滤后的 IDAT 块上使用该方法
由前面指定的 -m or -蛮横的 选项。 zlib 压缩级别是
0 到 9 之间的整数。0 = 无压缩,1 = 最快压缩,9 =
最佳压缩。
-机车 通过执行无损、可逆的颜色,使文件更具压缩性
转型。 生成的文件是 MNG 格式的文件,而不是 PNG,并且应该
被给予 .mng 文件扩展名。 这 疯狂的 选项对灰度或
索引颜色的 PNG 文件。
-m 方法 png粉碎 方法 [0-200] 尝试(0 表示尝试所有 1-10)。 可以重复,如
-m 1 -m 4 -m 7. 如果您在以下情况下内存不足,这会很有用 png粉碎 尝试
方法 2、3、5、6、8、9 或 10,它们使用过滤并占用大量内存。
方法一、四、七不使用过滤; 方法 1 及以上使用指定的过滤器,
压缩级别和策略。
-最大限度 最大值_IDAT_size
设置创建压缩缓冲区时要使用的最大 idat 大小。 [1
通过 524288]
-管理 编写一个新的 MNG,不要粉碎嵌入的 PNG。
-n 不要进行压缩或写入输出文件。 这在结合使用时很有用
这些因素包括原料奶的可用性以及达到必要粉末质量水平所需的工艺。 -v 获取信息或测试解码速度的选项。
-p 这个选项告诉 png粉碎 每当屏幕出现时暂停并等待 [enter] 键
填充。
-plte_len n
截断 PLTE。 PLTE 块包含 1 到 256 个调色板条目。 是
确保不要将其截断为小于 IDAT 中存在的最大索引。
-q 安静,与冗长相反。
-雷姆 块名
要删除的辅助块或可选 PLTE 的名称。 小心这一点。
请不要使用此功能删除透明度、伽玛、版权或其他
有价值的信息。 要删除几个不同的块,请重复: -雷姆 文本
-雷姆 酸碱度. 已知块(那些在 PNG 规范或扩展文档中的)可以是
全部用小写字母命名,所以 -雷姆 背景 相当于 -雷姆 BKGD。但是品牌对其自身难以衡量的部分,无法做出有效提升
注意事项: -雷姆 文本 删除所有形式的文本块; 需要具体情况
删除未知块。 用链锯做手术, -雷姆 一 删除所有
除 tRNS 之外的已知辅助块,以及 -雷姆 b 删除除 tRNS 和
伽玛。
-replace_gamma 伽玛
强制指定 伽玛 在输出文件中,即使输入中存在 gAMA。
查看 -g 获取更多信息。
-牛肉 DPI 写一个分辨率为的 pHYs 块 DPI. pHYs 块表示
所需的像素大小。
-节省 强制写入未知块。 如果输入图像的块不是
PNG 规范的一部分,不应丢弃它们。
-srgb n 将 sRGB 块的渲染意图值设置为 n 哪里 n 在0到3之间。
适当的渲染意图取决于图像的使用方式:
0 - Perceptual:当很好地适应输出设备色域时
需要以色度精度为代价,例如:照片。
1 - 相对色度:需要颜色外观匹配的图像
(相对于输出设备白点),例如:logos。
2:饱和度:以色相和色相为代价来保持饱和度
亮度是首选,例如:图表和图形。
3:绝对色度:需要保留绝对色度的图像
比色法,例如:样张(用于
不同的输出设备)。
-文本 [b|a] 关键词 文本
插入一个文本块。 [b|a] 指示是否应插入块 b之前或
a在 IDAT 块之后,(参见部分 “文本 块” ).
-新时间戳
将文件修改时间重置为更新的时间戳。 这是默认设置。
-旧时间戳
保留输入文件修改时间戳。 默认是 -新时间戳 这是
与此选项相反。
-转运 指数 红色 墨绿色 蓝色 灰色
如果在文件中未找到 tRNS 块,则插入 tRNS(透明)块。 你必须
无论颜色类型如何,都给出所有五个参数,缩放到输出位
深度。 有关详细信息,请参阅 PNG 文档。
-trns_array n 翻译[0] 翻译[1] ... 转换[n-1]
如果在文件中未找到 tRNS 块,则插入 tRNS(透明)块。 查看 PNG
有关详细信息的文档。
-v 显示更详细的信息。 对偶数重复该选项(使用“-v -v”)
更多。
-w 尺寸 指定 尺寸 以千字节(或在 512 的情况下为字节)的滑动压缩
大小为 [32、16、8、4、2、1 或 512] 之一的窗口。 最好使用
默认 (32) 除非内存不足。 该程序将使用较小的
当未压缩的文件小于 16k 时,窗口无论如何。
-z 策略
指定 zlib 压缩 策略 [0, 1, or 2] 用于过滤
前面方法的 IDAT 块 -m. zlib 策略参数
调整压缩算法,是以下之一:
· 0 : 默认,大多数压缩是针对字符串匹配的
· 1 : 一些字符串匹配,一些霍夫曼编码
· 2 : 仅使用霍夫曼编码
-zitxt [b|a] 关键词 文本
插入一个 zTXt 块。 [b|a] 指示是否应插入块 b之前或
a在 IDAT 块之后,(参见部分 “文本 块” ).
-ztxt [b|a] 关键词 文本
要插入的 zTXt 块(参见 -text)。
颜色 类型
PNG 规范提供了五种颜色类型。 颜色类型决定了
IDAT 块将由解码器解释。 选择适合的颜色类型
图像中的颜色信息原则上可以缩小尺寸。 然而,某些
的组合 -c 和 -位深度 需要当前禁用的颜色计数。 在
在这种情况下不会减少。 以下是 PNG 颜色类型,然后是
它们支持的位深度(注意 png粉碎 不支持将文件更改为颜色类型 3
来自另一种颜色类型。):
· 0 : 没有 alpha 通道的灰度 (1,2,4,8,16)
· 2 : 没有 alpha 通道的真彩色 (8,16)
· 3 : 索引颜色 (1,2,4,8)
· 4 : 带有 alpha 通道的灰度 (8,16)
· 6 : 带有 alpha 通道的真彩色 (8,16)
Alpha 通道表示基于每个像素的透明度。 零的 alpha 值是
完全透明。 2 bitdepth-1 的 alpha 通道是完全不透明的。
筛选 类型
IDAT 块可以选择在压缩之前进行过滤。 这些过滤器可以使
IDAT 块更可压缩而不会丢失任何数据并生成更小的 PNG 文件。
这些过滤器应用于 IDAT 块的字节,而不是像素。 以下是一个
过滤器的简要说明,详见 PNG 规范:
· 0:无过滤器
· 1 : 'sub' 传输每个字节和值之间的差异
先前像素的对应字节。
· 2 : 'up' 传输每个字节和值之间的差异
此像素上方像素的对应字节
· 3 : 'average' 传输每个字节之间的差异和平均值之间的差异
过滤器 1 和 2 中描述的字节
· 4 : 'paeth' 计算三个对应字节的简单线性函数
相邻像素(paeth_predictor = 左 + 上 - 左上),然后传输
有问题的字节与最接近该字节的相邻字节之间的差异
paeth_predictor 的值。
文本 切大块
与图像有关的文本信息可以用 tEXt、iTXt 和 zTXt 来传达
大块。 所有文本块都由一个关键字和一个字符串组成。 以下关键词
在 PNG 规范中定义:(您可以为其他目的发明关键字):
檔案/文件名称: 图片的短标题或说明
作者: 图像创建者的名字
描述: 图像的详细描述
版权: 版权声明
创建 时间:原始图像创建时间
软件:用于创建图像的软件
免责声明: 法律免责声明
警告: 内容性质警告
来源: 用于创建图像的设备
评论: 杂评。
tEXt 块以 ISO/IEC 8859-1 (Latin-1) 字符集存储文本。 zTXt 块也
使用 Latin-1 字符集,但文本被压缩。 这对于大型
文本块。 iTXt 块由 Unicode 字符集的 UTF-8 文本组成。
关键词 必须至少 1 个字符且少于 80 个字符。 文本 必须小于
使用时2048个字符 png粉碎 目前,您只能添加十个 tEXt、iTXt 或 zTXt
每块 png粉碎 运行。
使用 onworks.net 服务在线使用 pngcrush