Fallback rich de fontes de famílias fornecidas no Windows

File jobs do Windows e hpdf_document_execute_json_v1 suportam fallback opt-in entre famílias de fontes fornecidas pelo chamador para imports rich de FDF/XFDF e runs rich tipados originais; o fallback seleciona uma família que cubra o grapheme inteiro, incluindo partes que atravessam fronteiras de estilos rich

O default permanece estrito: fallbackFontFamilies é false e um glyph obrigatório ausente falha normalmente; fornecer uma lista não seleciona silenciosamente fontes instaladas do sistema

Requisição tipada

{
  "schemaVersion": 1,
  "type": "forms.fill",
  "fontFamilies": ["Primary", "Sans", "Serif"],
  "fallbackFontFamilies": true,
  "fields": [{"name": "Input", "richTextRuns": [
    {"text": "A\u03a9a\u0301", "fontStyle": "regular",
     "fontFamilyCandidates": ["Unavailable", "Primary", "Serif", "Sans"]}
  ]}]
}

fontFamilies contém um a dezesseis rótulos configurados distintos; letras ASCII comparam sem maiúsculas e os demais code points Unicode comparam exatamente; fontFamilies e fallbackFontFamilies de nível de campo sobrepõem os defaults da operação para forms.fill

Um run tipado pode especificar um a dezesseis fontFamilyCandidates ordered quando o fallback de famílias configuradas está habilitado; nomes desconhecidos permanecem nos metadados autorados e são ignorados durante a resolução de programas fornecidos; se fontFamily está ausente, o primeiro candidato declarado configurado vira a família do run

Uma lista declarada de candidatos controla a preferência antes da ordem de famílias configuradas; neste exemplo, uma fonte Primary sem Omega seleciona Serif antes de Sans quando ambas as alternativas fornecidas cobrem o grapheme inteiro

Import de XML rich

Para forms.import, use as propriedades de nível de operação fontFamilies e fallbackFontFamilies; o decoder XHTML delimitado preserva cada lista inline CSS de font-family, e o composer real de aparências aplica essa ordem aos programas de fontes fornecidos

<span style="font-family:Primary,Serif,Sans;font-weight:bold">AΩá</span>

Tanto strings FDF RV quanto XFDF value-richtext usam este path; o perfil inline-xhtml-font-families-v1 existente permanece inalterado, enquanto o comportamento real de fallback é reportado separadamente

Bytes reais de fontes

O callback de fontes THPDFCABIFormDataOperationV1 existente recebe cada rótulo canônico configurado de família e o identificador de estilo regular, bold, italic ou boldItalic; ele retorna a tabela original delimitada de IO de leitura e seus bytes são copiados para armazenamento próprio

File jobs leem os mesmos programas família/estilo do objeto fonts existente deles; para cada estilo rich usado, o binding carrega os programas candidatos configurados antes de preparar a transação; assets correspondentes são compartilhados entre campos tipados

Os layouts de IO e operação V1 e os símbolos exportados existentes permanecem inalterados; os orçamentos agregados de assets, bytes de fontes, memória, campos, objetos, resultado e saída permanecem aplicados; falhas de callbacks permanecem sticky, e checkpoints de cancelamento cobrem parsing, carregamento, preparação e publicação

Transações e limites

Autenticação AES, preservação de revisões assinadas, DocMDP, locks de campos e checagens read-only usam a transação autenticada existente; valores rich, estilos, fontes e semântica de aparências de mesma entrada podem produzir um no-op byte-idêntico, incluindo campos read-only

Callbacks de PDF e JSON precisam ter sucesso ambos antes de o contexto atual mudar; descarte os bytes candidatos emitidos após qualquer status não nulo; file jobs preparam o candidato completo antes de substituir o alvo

formDataExchange.suppliedFamilyFallback reporta default=false, richOnly=false, scalarText=true, choiceLabels=true, checkAndRadioMarks=true, comb=true, passwordMask=true, wholeGrapheme=true, fontFamilyCandidates=true, maxCandidates=16 e candidateOrder=declared-before-configured

O fallback escalar de famílias fornecidas também cobre texto comum, rótulos de choices e marcas de checkboxes ou radios através de jobs do Windows e callbacks versionados; os setters nativos de captions de pushbuttons usam suas APIs documentadas de aparências cientes de famílias

Preenchimento rich direto de jobs carregados, a extensão mais antiga de callbacks de handle/fonte de jobs, layout CSS arbitrário, folhas de estilo externas e mais interchange FDF/XFDF de anotações, arquivos, actions ou incrementos permanecem trabalho separado

Tópicos relacionados

Preenchimento original typed rich, Troca de form data no Windows, Transporte versionado de fontes, Famílias fornecidas nativas