Funciones de color muestreadas nativas

El renderer nativo Cairo evalúa funciones de color muestreadas FunctionType 0 con Order 1 u Order 3, incluidas múltiples entradas de tint y múltiples salidas de colores alternativos

La evaluación cúbica extiende la convención existente de interpolación escalar de cuatro nudos mediante un producto tensorial a través de las dimensiones de entrada; las ventanas se mueven hacia dentro en los bordes de la tabla, las dimensiones con menos de cuatro muestras retienen el fallback lineal existente, y Size 1 permanece constante

La ruta escalar de una entrada y una salida de la transfer-function conserva su comportamiento existente

Procesamiento de muestras

Las entradas se recortan a Domain, se mapean con Encode y se recortan a los bounds de la tabla; la interpolación lee muestras continuas most-significant-bit-first, aplica Decode y recorta los componentes completos a Range

Se soportan profundidades de muestra de 1, 2, 4, 8, 12, 16, 24 y 32 bits, con la primera dimensión de entrada variando más rápido

La sección 7.10.2 de ISO 32000-1 define el layout y la secuencia de procesamiento de las funciones muestreadas; la fórmula de aceptación numérica registra la convención existente de cuatro nudos de la librería sin pretender que el estándar selecciona un kernel cúbico único

Límites de recursos

La evaluación tensorial puede visitar cuatro ramas por dimensión de entrada; cada nodo visitado y cada bit de muestra cúbica se une a los límites agregados de operaciones y a la consulta de cancelación, mientras que las ramas de peso cero no hacen trabajo de muestras

Los streams decodificados, los datos de funciones retenidos y el almacenamiento de evaluación se suman a la admisión de bytes decodificados y bytes de trabajo activos; las tablas válidas grandes pueden exigir un límite de operación seleccionado por el llamador

Los fallos ocurren antes de publicar el PNG, y el rendering posterior puede reutilizar el mismo thread y la misma API de documento cargado

Aceptación

Ecuaciones tensoriales independientes resuelven los pesos de interpolación mediante un sistema de Vandermonde y verifican los píxeles nativos para profundidades de muestra empaquetadas, ventanas multidimensionales, dimensiones cortas, encodings y recortes de salida

Las diferencias de fuente de MuPDF y Poppler se retienen por separado de la aceptación tensorial nativa; ambos lectores también verifican compañeros de ecuaciones RGB explícitas

Vea Tests/Linux/HeadlessSampledCubic.en-us.md para la reproducción enfocada de fixtures y presupuestos, y el renderer nativo Cairo de Linux para los contratos de rendering y propiedad