Valores nativos de imagens e gráficos XFA

O host de eventos cria filhos nativos de valores de imagens, arcos, linhas e retângulos e os caminhos suportados deles de propriedades de bordas, cantos e fills; o valor efetivo de um desenho chega ao consumidor nativo de PDFs

Criar um valor de desenho

function updateGraphic(row, pngBase64) {
  const image = row.logo.value.image;
  image.contentType = "image/png";
  image.aspect = "fit";
  image.value = pngBase64;
  const line = row.rule.value.line;
  line.slope = "/";
  line.edge.thickness = "0.25pt";
  line.edge.color.value = "0,0,255";
}

As escolhas nativas de valores são mutuamente exclusivas, e a criação preserva o template e as outras ocorrências repetidas

Arc e line permitem cada um uma borda, rectangle permite quatro bordas e quatro cantos, e arc e rectangle permitem um fill

Line, rectangle e arc têm por defeito hand=even; line tem por defeito uma inclinação de barra invertida, enquanto arc tem por defeito circular=0, startAngle=0 e sweepAngle=360

Image tem por defeito aspect=fit e transferEncoding=base64, com atributos vazios de contentType, href e name

Consumo de imagens

Valores de desenhos PNG e JPEG incorporados retêm as cores fonte descodificadas deles; transparência PNG é guardada como uma soft mask nativa PDF em vez de composta nos canais fonte

Fit preserva o rácio da imagem dentro da região nominal, none preenche a região de forma independente em ambas as dimensões, width e height preservam o rácio correspondendo à dimensão nomeada, e actual usa dimensões físicas da imagem

Imagens são centradas na região nominal delas e cortadas a essa região; dimensionamento e clipping preservam o estado envolvente de gráficos

O dimensionamento actual lê densidade pHYs de PNGs e densidade JFIF em pontos por polegada ou por centímetro; uma imagem sem registo suportado de densidade física usa 96 DPI

Substituir um corpo existente de imagens de templates preserva os atributos de template dele a menos que um atributo nativo de formulários os sobrepunha

O consumidor FPC lê canais originais de PNGs e JPEGs diretamente, evitando perda de píxeis através de atribuição de bitmaps LCL; imagens opacas idênticas repetidas mantêm reutilização nativa de recursos

Consumo de gráficos

Valores criados de retângulos, linhas e arcos produzem caminhos nativos com as cores e larguras efetivas deles de bordas, incluindo larguras abaixo de um ponto; a inclinação de linhas e a extensão angular de arcos chegam ao consumidor

Instâncias repetidas novas recebem propriedades nativas independentes de gráficos, e falhas de orçamentos de scripts ou de atributos nativos restauram bytes nativos exatos de XDP

Refinamentos restantes

As operações nativas XML de exData importam conteúdo estrangeiro transacionalmente e consomem draws XHTML persistidos

Resolução externa de imagens, metadados físicos adicionais como EXIF, consumo de widgets imageEdit, renderização completa de fills e de cantos, lateralidade, geometria de arcos circulares e validação completa de valores escalares continuam a ser alvos separados de implementação

Referência e APIs relacionadas

A gramática de propriedades e os modos de imagens seguem o XFA 3.3; veja Propriedades de valores escalares, Valores de draws e de captions e Runtime XFA interativo