Une facture posée sur un modèle à en-tête
Une facture posée sur un papier à en-tête fourni sous forme de fichier PDF.
Un client envoie son propre papier sous la forme de trois fichiers PDF — la page avec son nom et son adresse en haut, une page nue pour les pages qui suivent, et la page de conditions qu'il joint toujours à la fin. Un fichier employé ainsi s'appelle un modèle. Ce qu'il veut en retour, c'est un contrat de fourniture qui ait l'air de sortir de sa propre imprimante, et le moyen le plus sûr d'y échouer est d'essayer d'en retracer une partie.
Les trois modèles sont gardés exactement tels qu'ils sont arrivés : le moteur lit chaque fichier, en prend la page telle quelle, et pose le nouveau texte par-dessus. L'en-tête du client a donc exactement l'allure qu'il lui a donnée, et les conditions qu'il a acceptées sont celles du dossier, mot pour mot. Le nombre de pages où la page nue est nécessaire est réglé par le tableau des livraisons lui-même : il prend les pages qu'il prend, et le document a cette longueur.
Rien n'est omis et rien n'est simplifié : c'est le programme exactement tel qu'il tourne, pour le développeur qui utilise cette bibliothèque. La troisième est la description elle-même : une simple liste de ce que la page doit dire, et c'est elle qu'on envoie au service.
Voir le code Rust Voir le code Python Voir le code JSON
Ouvrir le document en anglais Ouvrir le document en français
Une facture posée sur un papier à en-tête fourni sous forme de fichier PDF.
Un contrat de maintenance envoyé par quelqu'un d'autre, avec un emplacement de signature, une date et une ligne à soi posés sur sa dernière page et une annexe ajoutée après elle, chaque octet du contrat laissé à sa place.
Ce que vous obtenez avant de payer quoi que ce soit : un filigrane en travers de chaque page, et sous lui les mêmes pages, mises en page exactement comme une copie payante les met en page. C'est aussi le document qui dit ce qu'une clé de licence change, et pourquoi chaque chiffre de ce site est mesuré avec une clé.
Un formulaire que le lecteur remplit : champs texte, case à cocher, liste déroulante, boutons radio.
Une page qui porte une signature numérique, rompue par le moindre changement du fichier, faite avec un certificat qui n'existe que pour la démonstration. Chaque commande qui a servi à faire la clé et la signature est imprimée sur la page, avec celle qui la vérifie sans cette bibliothèque.
Un formulaire qui est aussi un fichier PDF/A-3 : chaque champ déjà tracé, avec un cadre visible, n'attendant rien du logiciel de lecture.