Tout ce qu'on peut dessiner sur une page
La seule clé obligatoire : la liste de ce qui est dessiné, dans l'ordre du tracé. Vingt et une sortes en tout.
Écrit au premier niveau d'une requête, sous
"items"
En mots de tous les jours
Écrit pour tout le monde. Il dit ce que cela pose sur une feuille de papier, et ne vous demande rien de plus.
Tout le reste règle le document ; celle-ci le remplit. C'est la liste de ce qui apparaît sur les pages : du texte, un tableau, une photo, un code-barres, un trait, une case à cocher. Chaque chose de la liste dit ce qu'elle est et où elle se met, et elles sont dessinées dans l'ordre où on les écrit — la dernière passe par-dessus les précédentes, comme des feuilles empilées sur un bureau.
Pour un développeur
Écrit pour celui qui écrit le programme appelant : le modèle, les unités, et les réglages qui portent le poids.
items est la seule clé qu'une requête doit porter. C'est un tableau, dans l'ordre du tracé, où chaque entrée porte une clé type qui dit laquelle des vingt et une sortes elle est. La plupart des sortes partagent un socle de réglages : le rectangle où elles vivent, les pages où elles paraissent, le calque auquel elles appartiennent, une rotation ou une transformation. Chaque sorte a sa page de détail.
Chaque clé, avec son défaut
La référence : quelles clés sont obligatoires, lesquelles sont facultatives, ce que vaut chacune par défaut et quelles combinaisons le serveur décline.
-
items— tableau, obligatoire. L'unique clé qu'une requête doit porter. -
Chaque entrée est un objet portant
type, ou un tableau dont le premier élément est l'étiquette. Un objet sanstypeest refusé ; deuxtypedans le même objet aussi. -
Vingt et une valeurs de
type, chacune avec sa page, listées plus bas. -
Réglages partagés par la plupart des sortes :
pages(tableau d'entiers, vide par défaut, c'est-à-dire toutes les pages),layer(nom d'un calque déclaré),idetrelative_to(position relative à un autre élément),transform(six nombres) ourotate(degrés) — les deux ensemble sont refusés.
Les vingt et une choses qu'un article peut être
Chacune a sa page : ce qu'elle est, ce qu'un développeur doit en savoir, chaque clé qu'elle prend avec sa valeur par défaut, et une requête entière qui la montre.
Texte
-
Un bloc de texte posé sur la page
textÉcrire du texte dans un rectangle choisi, avec sa police, sa taille et sa couleur, et mettre en valeur un mot au milieu d'une phrase. -
Du texte en paragraphes, avec retraits et tabulations
flowPoser plusieurs paragraphes dans un cadre, avec retrait de première ligne, espace entre eux, listes à puces et colonnes de chiffres alignées. -
Un tampon en travers de la page
stampPoser un mot en travers d'une zone, à la taille qui remplit la boîte : brouillon, payé, copie, annulé, en diagonale ou à plat.
Les tableaux
-
Un tableau qui se poursuit de page en page
tableDes lignes et des colonnes qui coulent sur autant de pages qu'il faut, avec en-tête répété, filets, fonds de couleur et cellules fusionnées.
Images et pages importées
-
Une image posée dans un rectangle
imagePlacer dans un cadre choisi une photo ou un logo fourni avec la requête, étiré jusqu'aux bords ou gardé à ses propres proportions. -
Une page d'un PDF fourni, posée sur la page
pdf_pageReprendre une page d'un PDF envoyé avec la requête et la poser dans un cadre, à ses proportions, au milieu des autres éléments.
Les codes-barres et les codes carrés
-
Un code-barres à barres verticales
barcodeDessiner un code-barres lisible par une douchette : Code 128 pour du texte, EAN-13, UPC-A et EAN-8 pour un article du commerce. -
Un code QR carré, lisible au téléphone
qrDessiner un code QR qui porte une adresse web ou un texte, lu par n'importe quel téléphone, avec sa marge blanche tout autour. -
Un code Aztec, sans marge blanche autour
aztecDessiner un code Aztec, celui des billets de train : carré, sans marge autour, avec la part de sécurité que vous choisissez. -
Un code Data Matrix, très petit et très solide
data_matrixDessiner un code Data Matrix, celui des colis et des petites pièces : autant de contenu qu'un code QR dans beaucoup moins de place. -
Un code PDF417, qui porte tout un formulaire
pdf417Dessiner un code PDF417 en barres empilées, celui des cartes d'embarquement : il porte un formulaire entier, pas seulement un numéro.
Formes
-
Un tracé libre : lignes, courbes et surfaces
pathDessiner une forme point par point, avec des segments droits et des courbes, remplie d'une couleur ou d'un dégradé, et cernée d'un trait. -
Un rectangle plein ou encadré
rectPoser un rectangle : un fond de couleur derrière un titre, un cadre autour d'une zone, ou les deux, avec le trait de votre choix. -
Une ligne droite entre deux points
lineTirer un trait d'un point à un autre, à l'épaisseur, à la couleur et au pointillé voulus : filet de séparation, soulignement, réglure.
Champs de formulaire
-
Une case dans laquelle le lecteur écrit
text_fieldAjouter une case à remplir : nom, adresse, commentaire sur plusieurs lignes, mot de passe masqué, ou numéro case par case. -
Une case que le lecteur coche
check_boxAjouter une case à cocher : accepter des conditions, choisir une option, avec la marque de votre choix et la valeur rapportée voulue. -
Une liste dans laquelle le lecteur choisit
choice_fieldOffrir une liste de réponses : liste déroulée, menu qui s'ouvre, ou menu dans lequel le lecteur tape aussi sa propre réponse. -
Plusieurs boutons, une seule réponse
radio_groupPoser des boutons dont un seul reste choisi à la fois, chacun à sa place sur la page, tous rattachés à la même question. -
L'emplacement réservé à une signature
signature_fieldRéserver sur la page l'endroit où une signature électronique viendra se poser, avec son nom et son encadrement. -
Un bouton sur lequel le lecteur appuie
push_buttonPoser un bouton qui agit au lieu de répondre : ouvrir une adresse, aller à une page, envoyer le formulaire ou le remettre à zéro.
Navigation
-
Une zone de la page sur laquelle on clique
linkRendre un morceau de page cliquable : il ouvre une adresse web, ou emmène le lecteur à une autre page du même document.
Une requête entière qui le dessine
Envoyez ceci tel quel et un PDF revient. Rien n'en a été retiré.
{
"standard_fonts": [{ "name": "sans", "face": "helvetica" }],
"items": [
{
"type": "rect",
"rect": { "llx": 60, "lly": 700, "urx": 535, "ury": 780 },
"fill": [0.93, 0.95, 0.98]
},
{
"type": "text",
"rect": { "llx": 72, "lly": 730, "urx": 523, "ury": 760 },
"content": ["Drawn second, so it sits on top"],
"font": "sans",
"font_size": 16
}
]
}
Ce qui est dessiné, et comment cela sort
Le poids du fichier et le temps de calcul Des couches que le lecteur montre ou cache Un dessin fait une fois, montré par un bouton
Où aller ensuite
Chaque clé d'une requête, en une page Les trente-deux autres réglages d'une requête
Glossaire
- code-barres
- Des barres noires et des blancs de largeurs différentes, qui représentent un numéro qu'un scanner relit d'un seul passage. Les barres portent le numéro et rien d'autre : le prix, l'article et la livraison se retrouvent à partir de lui. Un code récupéré en image puis redimensionné, ou rogné de trop près, cesse tout simplement d'être lu.
- requête
- Un appel au service : vous envoyez ce que le document doit dire, et vous recevez le document. Votre facture compte ces appels, un par document. Le nombre de pages d'un document n'est jamais compté.
- calque
- Un groupe nommé de choses dessinées sur une page, que le lecteur peut afficher ou masquer, comme un calque posé sur un plan. Un plan peut garder ses cotes sur l'un et ses notes sur l'autre, et un calque peut être réglé pour s'afficher à l'écran et rester hors de l'impression.