Funções de cores amostradas nativas
O renderer Cairo nativo avalia funções de cores amostradas FunctionType 0 com Order 1 ou Order 3, incluindo múltiplas entradas de tint e múltiplas saídas de cores alternativas
A avaliação cúbica estende a convenção existente de interpolação escalar de quatro nós por um produto tensorial através das dimensões de entrada; as janelas se movem para dentro nas bordas da tabela, dimensões com menos de quatro samples retêm o fallback linear existente, e Size 1 permanece constante
O caminho escalar de transferência de uma entrada e uma saída mantém seu comportamento existente
Processamento de samples
As entradas são clipadas ao Domain, mapeadas por Encode e clipadas aos limites da tabela; a interpolação lê samples contínuos most-significant-bit-first, aplica Decode e clipa os componentes concluídos ao Range
Profundidades de samples de 1, 2, 4, 8, 12, 16, 24 e 32 bits são suportadas, com a primeira dimensão de entrada variando mais rápido
A seção 7.10.2 da ISO 32000-1 define o layout e a sequência de processamento de funções amostradas; a fórmula de aceitação numérica registra a convenção existente de quatro nós da biblioteca, sem alegar que o padrão seleciona um kernel cúbico único
Limites de recursos
A avaliação tensorial pode visitar quatro ramos por dimensão de entrada; cada nó visitado e cada bit de sample cúbico entram nos limites agregados de operações e no polling de cancelamento, enquanto ramos de peso zero não fazem trabalho de amostragem
Streams decodificados, dados de funções retidos e armazenamento de avaliação entram na admissão de decoded-bytes e working-bytes ativos; tabelas válidas grandes podem exigir um limite de operações selecionado pelo chamador
Falhas ocorrem antes da publicação do PNG, e renderings subsequentes podem reutilizar a mesma thread e a API de documentos carregados
Aceitação
Equações tensoriais independentes resolvem os pesos de interpolação por um sistema Vandermonde e verificam os pixels nativos para profundidades de samples empacotadas, janelas multidimensionais, dimensões curtas, encodings e clipping de saída
As diferenças de código-fonte de MuPDF e Poppler são retidas separadamente da aceitação tensorial nativa; ambos os readers também verificam companions explícitos de equações RGB
Veja Tests/Linux/HeadlessSampledCubic.en-us.md para reprodução focada de fixtures e orçamentos, e Renderer Cairo nativo do Linux para os contratos de rendering e posse