Altura de linhas rich text tipada em JSON

forms.fill aceita membros opcionais de lineHeightKind e lineHeight em cada item richTextRuns original, usando o layout real de parágrafos e de linhas físicas de tipos de letra fornecidos

{
  "schemaVersion": 1,
  "type": "forms.fill",
  "fields": [{
    "name": "Input",
    "richTextRuns": [{
      "text": "First\rSecond",
      "fontSize": 10,
      "lineHeightKind": "number",
      "lineHeight": 2
    }]
  }]
}
KindValor e comportamento
legacyO default quando nenhum membro é fornecido, mantendo o layout existente de parágrafos
normalLayout normal explícito usando métricas de tipos de letra fornecidos e espaçamento nativo de linhas
numberUm fator sem unidade não negativo multiplicado pelo fontSize deste run
pointsUma altura absoluta em pontos não negativa
percentUma percentagem calculada imediatamente a partir do fontSize deste run e guardada em pontos
emUm fator calculado imediatamente a partir do fontSize deste run e guardado em pontos

Um lineHeight numérico sem lineHeightKind seleciona number; cada kind numérico exige um valor, enquanto legacy e normal aceitam valor ausente ou zero

Os valores têm de ser finitos e estar entre zero e um milhão; a altura em pontos calculada deles também tem de permanecer dentro desse limite, e nomes de kinds desconhecidos ou tipos inválidos falham antes do carregamento de tipos de letra

Zero é suportado e pode produzir linhas de base sobrepostas; ascenders e descenders reais da face determinam o half-leading negativo e a união do strut do parágrafo e das caixas de runs participantes

Cada run JSON é um item tipado original e não um elemento CSS; percent e em não introduzem herança entre objetos de runs JSON

O primeiro run fornece o estilo métrico do parágrafo; um primeiro run vazio pode contribuir com uma caixa pai maior ou com estilo diferente, e uma sequência preparada separada admite o tipo de letra real dele sem substituir os runs escritos

IsParagraphStrut não é um membro público JSON; runs gerados só de métricas contam para o orçamento cumulativo de runs da operação, e cada face métrica carregada conta para os bytes agregados de tipos de letra

O callback recebe pedidos reais configurados de famílias e de estilos, incluindo uma face pai que não pinta texto; os trabalhos de ficheiros existentes de Windows baseados em caminhos usam o mesmo parser tipado e o mesmo planeador de tipos de letra fornecidos

O V guardado mantém o texto lógico, o RV regista o perfil calculado do parágrafo, e o AP mantém a precisão original de cores e de tamanhos de tipos de letra

Operações totalmente rich inalteradas preservam os bytes PDF confirmados exatos, incluindo no-ops semânticos válidos só de leitura; estilos só de leitura alterados, falhas de autenticação AES e campos de assinaturas protegidos mantêm as políticas existentes

Erros de callbacks, cancelamento e falhas de orçamentos de publicação preservam o contexto anterior; trabalhos de ficheiros também preservam o destino anterior sob publicação atómica

Um coletor de callbacks já pode ter aceitado bytes candidatos de PDFs quando um callback posterior falha; o contexto vivo confirma apenas depois dos callbacks exigidos e das verificações finais de cancelamento terem sucesso

Os layouts versionados de operações C e de callbacks de tipos de letra permanecem inalterados; as capacidades anunciam os kinds e limites reais de line-height dentro do perfil de preenchimento tipado

Layout nativo de line-height · Registo original de runs