PDFium Component Docs

SelectPdfImageCodec función

Unidad: PDFium
Elige la recodificación elegible más pequeña para una imagen a partir de los tamaños medidos de los códecs

Syntax

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

Parameters

CandidateTPdfImageCodecCandidate
AllowedCodecsTPdfImageCodecs
MinimumSavingBytesInt64

Return Value

TPdfImageCodecDecision

Description

SelectPdfImageCodec es un auxiliar de decisión puro que compara las estimaciones de EncodedBytes registradas en el candidato y devuelve qué códec debe almacenar la imagen

Cada códec permitido se comprueba primero para determinar su elegibilidad: picJpeg exige que no haya alfa, una imagen no bilevel, 8 bits por componente, 1, 3 o 4 componentes y un conteo de colores únicos desconocido o mayor que 256; picJpx exige una imagen no bilevel con al menos 8 bits por componente y de 1 a 4 componentes; picCcittGroup4 exige una imagen bilevel sin alfa, 1 bit por componente y un único componente; picFlate acepta al menos 1 bit por componente y al menos 1 componente

Entre los códecs elegibles gana el valor de EncodedBytes positivo más pequeño, y la decisión informa OriginalBytes, SelectedBytes y SavedBytes

ReplaceOriginal es True solo cuando el ganador no es picKeepOriginal y SavedBytes alcanza MinimumSavingBytes; de lo contrario, la decisión se restablece a picKeepOriginal con cero bytes guardados

Remarks

Example

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

See Also

TPdf.OptimizeImages, BuildToUnicodeCMap, TPdf.ImageInfo