Espacement des runs JSON du texte enrichi typé
Les jobs de fichiers Windows et les opérations de callbacks versionnées, ainsi que les opérations de callbacks Linux natives versionnées, lient l'espacement aux entrées richTextRuns de forms.fill en utilisant les runs typés d'origine
{"type":"forms.fill","fields":[{"name":"Input","richTextRuns":[
{"text":"A spaced line","fontSize":12,
"letterSpacingKind":"em","letterSpacing":0.125,
"wordSpacingKind":"points","wordSpacing":-0.5}
]}]}
letterSpacingKind et wordSpacingKind acceptent legacy, normal, points et em ; un kind omis avec une valeur numérique signifie points, tandis que kind et valeur omis signifient legacy
points et em exigent une valeur numérique finie ; legacy et normal n'autorisent qu'une valeur absente ou nulle ; les valeurs rédigées et les longueurs en points calculées ont un maximum absolu de 1000000
L'analyseur JSON Windows conserve les valeurs décimales finies au Double le plus proche avant que les runs typés d'origine n'atteignent le layout ; la notation scientifique suit la grammaire et la plage numériques JSON existantes, et la limite d'octets de requête existante borne aussi les tokens numériques longs
Modes inconnus, types JSON erronés, valeurs calculées en débordement et runs riches sur des champs non textuels échouent avant le chargement de polices ou la publication ; les budgets agrégés existants de polices, d'objets, d'entrée et de sortie ainsi que les contrôles d'annulation restent actifs
Les champs mixtes scalaires et riches utilisent la candidate transactionnelle existante, préservant le graphe chargé courant, la clé de révision AES authentifiée, les contraintes de signatures et le comportement de callbacks PDF/résultat en deux phases
Dans ce profil borné, un normal explicite et un zéro explicite calculent le même espacement en points et le même RV canonique, rendant les mises à jour équivalentes réelles en lecture seule des no-ops sémantiques ; les opérations JSON versionnées conservent les octets sources d'origine, et le mode legacy omis reste distinct parce qu'il hérite des options d'apparence globales
Les champs en lecture seule acceptent de vrais no-ops sémantiques et rejettent un espacement modifié ; les no-ops JSON réussis gardent des octets PDF exacts, et des callbacks de sortie ou de résultat en échec laissent le contexte courant inchangé
Les métadonnées de capacités exposent typedRichFill.spacing sans changer les structures ni les symboles C ABI existants ; l'espacement s'applique aux coordonnées réelles de glyphes façonnés et aux valeurs RV, selon les règles bornées de l'espacement natif des runs