PDFium Delphi Component Docs

SelectPdfImageCodec الدالة

الوحدة: PDFium
تختار أصغر إعادة ترميز مؤهلة لصورة واحدة انطلاقًا من أحجام المرمِّسات المقيسة

الصياغة

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

المعاملات

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

قيمة الإرجاع

TPdfImageCodecDecision

الوصف

‏SelectPdfImageCodec مساعد قرار خالص يقارن تقديرات EncodedBytes المسجلة على المرشح ويعيد أي مرمِّس ينبغي أن يخزن الصورة

يفحص كل مرمِّس مسموح أهلته أولًا: يشترط picJpeg عدم وجود ألفا وصورة غير ثنائية المستوى و 8 بت لكل مكون و 1 أو 3 أو 4 مكونات وعدد ألوان مميز مجهول أو أكبر من 256؛ ويشترط picJpx صورة غير ثنائية المستوى بـ 8 بت على الأقل لكل مكون ومن 1 إلى 4 مكونات؛ ويشترط picCcittGroup4 صورة ثنائية المستوى بلا ألفا وبت واحد لكل مكون ومكونًا واحدًا؛ ويقبل picFlate بتًا واحدًا على الأقل لكل مكون ومكونًا واحدًا على الأقل

من بين المرمِّسات المؤهلة يفوز أصغر قيمة EncodedBytes موجبة، ويُبلِّغ القرار عن OriginalBytes و SelectedBytes و SavedBytes

يكون ReplaceOriginal بالقيمة True فقط عندما لا يكون الرابح picKeepOriginal وعندما تبلغ SavedBytes قيمة MinimumSavingBytes؛ وإلا يُعاد القرار إلى picKeepOriginal بصفر بايتات موفَّرة

ملاحظات

مثال

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

انظر أيضًا

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo