Un champ que le lecteur remplit
Ajouter un champ à remplir : un nom, une adresse, un commentaire sur plusieurs lignes, un mot de passe caché, ou un numéro à raison d'une case par chiffre.
Résumé
Le champ vide d'un formulaire, celui où le lecteur saisit une réponse directement à l'écran, sans rien imprimer. Vous choisissez où il se place, quelle police il emploie, et si le texte se range à gauche, au centre ou à droite. Un champ de commentaire prend plusieurs lignes ; un mot de passe montre des points à la place des lettres ; et un numéro de référence peut être découpé en petites cases, une par caractère, comme le font les formulaires officiels.
Techniquement
Demandé avec
"type": "text_field"
Un champ de saisie est une annotation /Widget et un champ /FT /Tx dans l'AcroForm, posés par-dessus ce que les autres articles ont dessiné : il se contente des pages déjà là, et un champ vide laisse voir la page telle quelle, l'encadrement lui donnant sa silhouette. La valeur de départ, /V, et celle qu'une remise à zéro rétablit, /DV, se disent séparément, si bien qu'un formulaire peut démarrer rempli et se vider à la remise à zéro. Les bits /Ff déclarent le multiligne, le mot de passe et le peigne, et le mode peigne implique le /MaxLen qui divise la boîte. Le nom du champ est ce qu'un formulaire rempli rapporte, et il sert aussi de cible aux actions d'envoi et de remise à zéro.
Schéma de la requête
Clés obligatoires : name, une chaîne ; rect ; font ; font_size. Clés facultatives du champ lui-même : value, la valeur de départ ; default_value, la valeur qu'une remise à zéro rétablit ; multiline, password et comb, booléens à false ; max_length, un entier ; align, l'un de left (par défaut), center ou right. Clés facultatives communes à tous les champs : read_only, required, no_export, booléens à false ; background, la couleur derrière le champ ; border, un objet avec un width obligatoire, une color (noir par défaut, donnée en lumière : gris ou RVB) et un style parmi "solid" (par défaut), {"dashed": {"lengths": …}}, "beveled", "inset" ou "underline" ; tooltip, une chaîne, ce à quoi sert le champ et le nom sous lequel un lecteur d'écran l'annonce ; mapping_name, une chaîne, le nom sous lequel un formulaire envoyé rapporte la réponse quand ce n'est pas le name du champ ; flags, un objet disant ce que le logiciel de lecture fait du widget en plus de l'afficher, écrit exactement comme l'écrit une marque de relecture posée sur une page, son absence imprimant le champ sans rien dire d'autre ; description, une chaîne, ce que le widget dit à ce même lecteur d'écran ; triggers, un objet nommant une action par moment ; pages, un tableau d'entiers comptés à partir de 1, vide par défaut ; relative_to, un objet de id, edge, offset et d'un part facultatif. Refus croisés : comb sans max_length ; une couleur CMJN ou en espace nommé dans border.color. Les dix moments sont enter, le pointeur arrivant sur le champ ; exit, le pointeur le quittant ; down, le bouton du pointeur enfoncé dessus ; up, ce bouton relâché dessus ; focused et blurred, le champ prenant le focus de saisie et le perdant ; page_opened et page_closed, la page où le champ se trouve étant ouverte et fermée ; page_shown et page_hidden, cette page entrant dans la vue et en sortant. Un moment laissé de côté est un moment que le fichier laisse de côté lui aussi, et un champ qui déclare aussi une action suit celle-ci plutôt que up. Un document qui revendique pdfua2 veut que chaque champ ait un tooltip ou une description ; un document qui revendique une partie de PDF/A autre que la quatrième n'accepte aucun champ qui agisse, et le rendu est refusé, pdfa4 et pdfa4f en laissant passer un. Un document qui revendique une partie quelconque de PDF/A n'accepte aucun champ dont les flags le cachent, le rendent invisible ou le tiennent hors de l'écran ou du papier, et le rendu est refusé : toute annotation d'un fichier d'archive est imprimée et affichée.
Une requête entière qui crée un PDF
{
"standard_fonts": [{"name": "sans", "face": "helvetica"}],
"items": [
{
"type": "text_field",
"name": "customer",
"align": "left",
"rect": {"llx": 72, "lly": 700, "urx": 300, "ury": 718},
"font": "sans",
"font_size": 11,
"border": {"width": 0.75, "style": "underline"}
}
]
}
Champs de formulaire
Une case que le lecteur coche Une liste dans laquelle le lecteur choisit Plusieurs boutons, une seule réponse L'emplacement réservé à une signature Un bouton sur lequel le lecteur appuie
Où aller ensuite
Toutes les clés JSON d'une requête, en une page Les vingt-deux autres choses que l'on peut dessiner