NormalizeLZWStreams
文档管理
说明
将每个使用 LZWDecode 过滤的流重写为 FlateDecode。解压时会遵循 Predictor、Columns、Colors 和 BitsPerComponent 解码参数;单个 LZWDecode /Filter 条目会被整体替换,而在过滤器数组中,LZWDecode 条目会原位替换,以保持链式过滤器的顺序
LZW 解码对两种 EarlyChange 值都遵循标准的码宽切换,包括字典重置和数据结束码
语法
Delphi
Function TPDFlib.NormalizeLZWStreams: Integer;返回值
已转换的流数量;所选文档不含 LZWDecode 流时返回 0
备注
LZWDecode 可追溯至 PDF 1.0,多个严格输出配置和下游工具更偏好 FlateDecode,因此在规范化旧版文档时请在保存前运行此处理。转换是无损的:解压后的字节会使用 Deflate 重新压缩,流字典保留其余条目
示例
PDF.LoadFromFile('legacy.pdf', '');
PDF.NormalizeLZWStreams;
PDF.SaveToFile('legacy-normalized.pdf');