PDFium Delphi Component Docs

SelectPdfImageCodec funktion

Enhed: PDFium
Vælger den mindst mulige kvalificerede re-encoding for ét billede ud fra målte codec-størrelser

Syntax

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

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec er en ren beslutningshjælper, der sammenligner de EncodedBytes-estimater, der er registreret på kandidaten, og returnerer, hvilken codec der bør gemme billedet

Hver tilladt codec tjekkes først for egnethed: picJpeg kræver ingen alpha, et ikke-bilevel-billede, 8 bits pr. komponent, 1, 3 eller 4 komponenter og et ukendt eller over 256 liggende antal unikke farver; picJpx kræver et ikke-bilevel-billede med mindst 8 bits pr. komponent og 1 til 4 komponenter; picCcittGroup4 kræver et bilevel-billede uden alpha, 1 bit pr. komponent og én enkelt komponent; picFlate accepterer mindst 1 bit pr. komponent og mindst 1 komponent

Blandt de egnede codecs vinder den mindste positive EncodedBytes-værdi, og beslutningen rapporterer OriginalBytes, SelectedBytes og SavedBytes

ReplaceOriginal er True, kun når vinderen ikke er picKeepOriginal, og SavedBytes når MinimumSavingBytes; ellers nulstilles beslutningen til picKeepOriginal med nul gemte bytes

Remarks

Example

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

See Also

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo