ExternalizeInlineImages

Optimización de documentos, manejo de imágenes, rendimiento

Descripción

Busca imágenes en línea compatibles idénticas por bytes en el contenido de las páginas seleccionadas y reemplaza sus definiciones repetidas de BI a EI con referencias a un Image XObject compartido

Sintaxis

Delphi

Function TPDFlib.ExternalizeInlineImages(Const PageRange: WideString= ''; MinimumOccurrences: Integer= 2): Integer;

Parámetros

PageRangeUn intervalo de páginas basado en uno como 1,3,5-7, o una cadena vacía para todas las páginas; se ignoran los números de página duplicados
MinimumOccurrencesEl número mínimo de ocurrencias exactas necesario para la promoción y debe ser de al menos 2

Valores devueltos

Cantidad de apariciones de imágenes en línea reemplazadas, o 0 si ningún grupo cumple los requisitos, el intervalo no es válido, el mínimo es menor que 2 o la operación se cancela antes de aplicarse

Observaciones

La agrupación incluye dimensiones, profundidad de bits, indicadores de máscara de imagen e interpolación, espacio de color, cadena de filtros, parámetros de decodificación, matriz de decodificación y carga útil codificada, con indexación SHA-256 seguida de comparación exacta

Se admiten imágenes directas DeviceGray, DeviceRGB y DeviceCMYK, y máscaras de estarcido; los espacios de color con nombre o complejos y las entradas desconocidas de diccionario en línea permanecen sin cambios

Se conservan los filtros y parámetros de decodificación existentes; una carga útil sin filtrar se comprime con Flate solo cuando la representación comprimida es más pequeña

Un grupo se promociona solo cuando una estimación conservadora que incluye el Image XObject, recursos de página e instrucciones de reemplazo es menor que los tramos insertados originales

La operación informa el progreso de recopilación y aplicación, responde a Abort en los límites de página, restaura la página seleccionada anteriormente y es idempotente

La cancelación durante la recopilación no realiza cambios; la cancelación durante la aplicación conserva las páginas ya completadas

Ejemplo

ReplacedImages:= PDF.ExternalizeInlineImages('1-200', 3);
Writeln(ReplacedImages);

Véase también

OptimizeImages, RecompressStreams, NormalizeContentStreams