Decorações nativas de anotações
HPDFRenderHeadlessPagePNG gera bordas em relevo e captions de linha de aparência ausente por meio do seu renderer normal delimitado de Forms de anotações
Uma aparência normal fornecida tem precedência sobre decorações geradas
Bordas retangulares em relevo
Frames de borda Square, Link, FreeText e Stamp suportam os estilos BS B e I usando bandas sombreadas opostas, com a direção da luz invertida para relevo interno
Para cada componente de cor c da borda, a banda clara usa 1 − (1 − c) × 0.35 e a banda escura usa c × 0.5
A largura da banda é limitada à metade da dimensão mais curta do frame; diferenças de retângulos, largura zero, cores vazias e opacidade separada CA/ca permanecem efetivas
Estilos nomeados BS desconhecidos usam o default sólido padrão; um estilo com tipo incorreto permanece uma entrada malformada de dicionário
Layout de captions de linha
Cap habilita uma caption a partir de Contents ou RC XHTML com estilo DS; CP seleciona placement Inline ou Top, e CO fornece offsets ao longo da direção original do endpoint e sua normal esquerda
Captions Inline deixam um espaço medido na linha; captions Top e captions mais largas que a linha usam placement acima da linha
Endpoints invertidos retêm texto na posição vertical, enquanto terminações de setas e leader lines retêm sua geometria independente
O default simples é um nome de recurso determinístico de Helvetica de 12 pontos com a cor da anotação, resolvido pelos recursos existentes de fontes do documento e da página
Unicode, estilos rich-text e quebras de parágrafos explícitas usam o builder existente de aparências de texto read-only; texto vazio deixa a linha comum intacta
Clipping, tempo de vida e limites
O placement de captions usa as dimensões medidas do Form temporário e retém seus clips de BBox e de retângulo da anotação
O clip de padding interno do builder de campos é removido apenas deste layout de caption gerado; os operadores comuns de W e W* do PDF permanecem inalterados
Recursos de texto gerados compartilham bytes imutáveis de programas TrueType dentro de uma anotação, com posições independentes de streams e limpeza depois que todas as views de recursos temporários forem liberadas
Bytes decodificados, memória de trabalho, tokens, operações, tamanho da saída e cancelamento permanecem delimitados, incluindo captions multilíngues longas e recuperação após um render com falha
Aceitação e trabalho restante
Os runners não GUI em Tests/Linux/HeadlessAnnotationDecorations.en-us.md comparam companions comuns de geometria de conteúdo de páginas em duas escalas nos usos view e print, retendo observações separadas de MuPDF e Poppler
Fixtures cobrem opacidade, transparência, visibilidade opcional, documentos criptografados, Unicode curto e longo, fronteiras de captions, preservação do grafo de origem e recuperação de cancelamento
Fontes default originais Type1C, CIDFontType0C e Type1 puro, aparências OpenType CFF e aparências de default instance OpenType CFF2 têm suporte pelos seus caminhos de fontes documentados; shaping complexo de fontes raw e CFF2 raw standalone ficam fora desses caminhos
O perfil DA delimitado de FreeText aplica transforms de texto e estado inicial de stroke ao texto e às decorações geradas; o clipping de texto usa contornos de glifos em vez da silhueta expandida do stroke, e os quatro controles finitos two-run de Tr4 a Tr7 passaram comparações nativas e readers independentes MuPDF 1.28.5 e Poppler
Composição fracionária de glyphs preenchidos tem seus próprios limites lançados e regras de alocação; controles DA finitos não estabelecem envelopes de raster transformados arbitrários nem cobertura matemática exata em cada pixel de fronteira
Veja o fallback de anotações para o escopo mais amplo de geometria e formatos suportados
Veja Bordas cloudy nativas de anotações para a construção de contornos contínuos, limites de conteúdo Unicode e os entry points normais de aceitação