שיטת 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');

APIs קשורים