PDFium Delphi Component Docs

פונקציית SelectPdfImageCodec

Unit: PDFium
בוחרת את הקידוד-מחדש הקטן ביותר הכשיר עבור תמונה אחת מתוך גדלי codec שנמדדו

Syntax

function SelectPdfImageCodec(const Candidate: TPdfImageCodecCandidate;
  AllowedCodecs: TPdfImageCodecs; MinimumSavingBytes: Int64 = 1): TPdfImageCodecDecision;

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec הוא עוזר החלטה טהור שמשווה את הערכות ה-EncodedBytes שנרשמו על ה-candidate ומחזיר איזה codec צריך לאחסן את התמונה

כל codec מותר נבדק קודם לכשירות: picJpeg דורש היעדר alpha, תמונה שאינה bilevel, 8 ביטים לרכיב, 1,‏ 3 או 4 רכיבים, ומספר צבעים ייחודיים לא ידוע או גדול מ-256; picJpx דורש תמונה שאינה bilevel עם לפחות 8 ביטים לרכיב ובין 1 ל-4 רכיבים; picCcittGroup4 דורש תמונת bilevel ללא alpha, ביט אחד לרכיב ורכיב יחיד; picFlate מקבל לפחות ביט אחד לרכיב ולפחות רכיב אחד

בין ה-codecs הכשירים זוכה הערך החיובי הקטן ביותר של EncodedBytes, וההחלטה מדווחת על OriginalBytes,‏ SelectedBytes ו-SavedBytes

ReplaceOriginal הוא True רק כאשר הזוכה אינו picKeepOriginal ו-SavedBytes מגיע אל MinimumSavingBytes; אחרת ההחלטה מאופסת בחזרה אל picKeepOriginal עם אפס בתים שנחסכו

Remarks

Example

Decision := SelectPdfImageCodec(Candidate, [picJpeg, picJpx, picFlate], 1024);
if Decision.ReplaceOriginal then
  ReEncode := Decision.Codec;

See Also

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo