THotPDF.OptimizeLoadedStreams 方法

仅当替换小于所请求阈值时,才将所选的已加载流族重写为 Flate

声明

function OptimizeLoadedStreams(
  FilterFamilies: THPDFLoadedStreamFilterFamilies;
  MinimumSavingsBytes: Int64;
  out AInfo: THPDFLoadedStreamOptimizationInfo): Integer;

单元

HPDFDoc

参数

名称用途
FilterFamilies选择未过滤、Flate、LZW、ASCII85、ASCIIHex 和 RunLength 候选
MinimumSavingsBytes候选替换其源流之前所需的正的最小字节减少量
AInfo接收已扫描、候选、已重写、不支持、失败、之前、之后和已节省字节的合计

返回值

返回已加载对象图中被替换的流载荷数

用法说明

类型和诊断

THPDFLoadedStreamFilterFamily = (lsffUnfiltered, lsffFlate, lsffLZW,
  lsffASCII85, lsffASCIIHex, lsffRunLength);
THPDFLoadedStreamFilterFamilies = set of THPDFLoadedStreamFilterFamily;

THPDFLoadedStreamOptimizationInfo = record
  ScannedStreamCount: Integer;
  CandidateStreamCount: Integer;
  RewrittenStreamCount: Integer;
  UnsupportedStreamCount: Integer;
  DecodeFailureCount: Integer;
  BytesBefore: Int64;
  BytesAfter: Int64;
  BytesSaved: Int64;
end;

示例

Families := [lsffUnfiltered, lsffFlate, lsffLZW];
Count := PDF.OptimizeLoadedStreams(Families, 16, Info);
if Count > 0 then
  PDF.SaveLoadedDocument('optimized.pdf');

相关 API