THotPDF.DecodeLoadedImageColorKeyMask Method
Construye el bitmap de color-key mask para una imagen cargada cuyo diccionario trae una entrada array /Mask
Declaración
function DecodeLoadedImageColorKeyMask(
AImageStream: THPDFStreamObject): TBitmap;
Unidad
HPDFDoc
Parámetros
| Nombre | Propósito |
|---|---|
AImageStream | Objeto stream de la imagen cargada cuyo diccionario contiene el array color-key /Mask |
Valor de retorno
Bitmap grayscale de 24 bits con las dimensiones de la imagen, donde el negro marca los píxeles cuyas samples caen todas dentro de los rangos de su component y el blanco marca los píxeles con algún component fuera de su rango; nil cuando la imagen no es elegible
Notas de uso
- La elegibilidad replica las reglas de color-key masking de PDF: la imagen debe ser decodificable, no ser un image mask, tener de 1 a 4 components de color y traer un array /Mask de 2 valores por component
- Los rangos se comparan con las samples tal como están almacenadas, antes de
/Decode; para una imagen Indexed ese es el índice de la paleta, de modo que dos entradas del mismo color pueden quedar enmascaradas de forma distinta - Los streams DCTDecode, JPXDecode, JBIG2Decode y con codificación CCITT devuelven nil: los codecs con pérdida no conservan valores de sample exactos
RenderLoadedPageToBitmapyBuildLoadedPageSVGaplican esta máscara cuando dibujan la imagen- La decodificación respeta el byte budget de decode configurado, así que las imágenes hostiles o demasiado grandes fallan de forma limpia en lugar de agotar la memoria
- El bitmap devuelto es propiedad del caller; combínenlo con
DecodeLoadedImageStreampara previsualizar qué regiones el viewer va a tratar como enmascaradas