Hauteur de ligne JSON du texte enrichi typé

forms.fill accepte des membres lineHeightKind et lineHeight optionnels sur chaque item richTextRuns d'origine, en utilisant le vrai layout de paragraphe et de lignes physiques des polices fournies

{
  "schemaVersion": 1,
  "type": "forms.fill",
  "fields": [{
    "name": "Input",
    "richTextRuns": [{
      "text": "First\rSecond",
      "fontSize": 10,
      "lineHeightKind": "number",
      "lineHeight": 2
    }]
  }]
}
KindValeur et comportement
legacyLe défaut quand aucun membre n'est fourni, conservant le layout de paragraphe existant
normalLayout normal explicite utilisant les métriques des polices fournies et l'interlignage natif
numberUn facteur sans unité non négatif multiplié par la fontSize de ce run
pointsUne hauteur absolue en points non négative
percentUn pourcentage calculé immédiatement depuis la fontSize de ce run et stocké en points
emUn facteur calculé immédiatement depuis la fontSize de ce run et stocké en points

Un lineHeight numérique sans lineHeightKind sélectionne number ; chaque kind numérique exige une valeur, tandis que legacy et normal acceptent une valeur absente ou nulle

Les valeurs doivent être finies et entre zéro et un million ; leur hauteur en points calculée doit aussi rester dans cette borne, et des noms de kinds inconnus ou des types invalides échouent avant le chargement des polices

Zéro est pris en charge et peut produire des lignes de base superposées ; les ascendants et descendants réels des faces déterminent le demi-interlignage négatif et l'union du strut de paragraphe et des boîtes de runs participantes

Chaque run JSON est un item typé d'origine plutôt qu'un élément CSS ; percent et em n'introduisent pas d'héritage entre objets de runs JSON

Le premier run fournit le style métrique du paragraphe ; un premier run vide peut contribuer une boîte parente plus grande ou différemment stylée, et une séquence préparée séparée admet sa police réelle sans remplacer les runs rédigés

IsParagraphStrut n'est pas un membre JSON public ; les runs générés réservés aux métriques comptent dans le budget cumulé de runs de l'opération, et chaque face métrique chargée compte dans les octets de police agrégés

Le callback reçoit les requêtes de familles et de styles configurées réelles, face parente ne peignant aucun texte comprise ; les jobs de fichiers Windows à chemin existants utilisent le même parseur typé et le même planificateur de polices fournies

Le V enregistré garde le texte logique, RV consigne le profil de paragraphe calculé, et AP conserve la précision d'origine de la couleur et de la taille de police

Les opérations tout-riche inchangées préservent les octets PDF commis exacts, no-ops sémantiques valides en lecture seule compris ; les styles en lecture seule modifiés, les échecs d'authentification AES et les champs de signatures protégés gardent les politiques existantes

Les erreurs de callbacks, l'annulation et les échecs de budget de publication préservent le contexte précédent ; les jobs de fichiers préservent aussi la destination précédente sous publication atomique

Un puits de callback peut déjà avoir accepté des octets PDF candidats quand un callback ultérieur échoue ; le contexte vivant ne commet qu'après le succès des callbacks requis et des contrôles d'annulation finaux

Les layouts versionnés des opérations C et des callbacks de polices sont inchangés ; les capacités annoncent les kinds et bornes lineHeight réels dans le profil de remplissage typé

Layout natif de hauteur de ligne · Record de run d'origine