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