PDFium Delphi Component Docs

SelectPdfImageCodec تابع

واحد: PDFium
از میان اندازه‌های اندازه‌گیری‌شدهٔ کدک‌ها، کوچک‌ترین بازکدگذاری واجد شرایط را برای یک تصویر برمی‌گزیند

Syntax

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

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec یک تابع کمکی تصمیم خالص است که برآوردهای EncodedBytes ثبت‌شده روی کاندید را مقایسه می‌کند و برمی‌گرداند کدام کدک باید تصویر را ذخیره کند

هر کدک مجاز ابتدا از نظر شرایط سنجیده می‌شود: picJpeg بدون alpha بودن، تصویر غیر باینری، 8 بیت به‌ازای هر مؤلفه، 1 یا 3 یا 4 مؤلفه و شمار رنگ یکتای نامشخص یا بیشتر از 256 را لازم دارد؛ picJpx تصویر غیر باینری با دست کم 8 بیت به‌ازای هر مؤلفه و 1 تا 4 مؤلفه را لازم دارد؛ picCcittGroup4 تصویر باینری بدون alpha، 1 بیت به‌ازای هر مؤلفه و یک مؤلفه منفرد را لازم دارد؛ picFlate دست کم 1 بیت به‌ازای هر مؤلفه و دست کم 1 مؤلفه را می‌پذیرد

در میان کدک‌های واجد شرایط کوچک‌ترین مقدار مثبت 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