PDFium Delphi Component Docs

SelectPdfImageCodec funkcia

Unit: PDFium
Vyberie najmenšie oprávnené opätovné kódovanie jedného obrázka z odmeraných veľkostí kodekov

Syntax

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

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec je čistý rozhodovací pomocník, ktorý porovná odhady EncodedBytes zaznamenané na kandidátovi a vráti, ktorý kodek má obrázok uložiť

Každý povolený kodek sa najprv skontroluje na oprávnenosť: picJpeg vyžaduje žiadnu alfu, nebinárny obraz, 8 bitov na zložku, 1, 3 alebo 4 zložky a neznámy alebo väčší než 256 počet unikátnych farieb; picJpx vyžaduje nebinárny obraz s aspoň 8 bitmi na zložku a 1 až 4 zložkami; picCcittGroup4 vyžaduje binárny obraz bez alfy, 1 bit na zložku a jedinú zložku; picFlate prijíma aspoň 1 bit na zložku a aspoň 1 zložku

Medzi oprávnenými kodekmi vyhráva najmenšia kladná hodnota EncodedBytes a rozhodnutie hlási OriginalBytes, SelectedBytes a SavedBytes

ReplaceOriginal je True, len keď víťaz nie je picKeepOriginal a SavedBytes dosiahne MinimumSavingBytes; inak sa rozhodnutie resetuje na picKeepOriginal s nulovými ušetrenými bajtmi

Remarks

Example

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

See Also

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo