Un tableau de facture multi-pages
Douze lignes de facture tiennent sur une page, trente en occupent deux, la seconde reprenant l'en-tête et la mise en page de la première.
Un fournisseur envoie un lot — un bon de livraison, une liste de colisage, un certificat, un ticket de pesée — et quelqu'un doit dire, page par page, ce qui a été relevé sur chacune. Le résumé qu'il écrit est en général une capture d'écran de chaque page, ou la page retapée. Dans les deux cas, le résumé et le papier peuvent se contredire, et le jour où cela arrive, c'est le résumé qu'on croit.
Ici, chaque page arrive sur la page de contrôle telle qu'elle est arrivée : la page entière, réduite à la taille d'une cellule, ni retracée ni ressaisie. À côté d'elle se tient le tampon qu'elle a reçu. Le tampon est tracé une fois et posé sur chaque ligne qui en a besoin, si bien que le fichier ne le contient qu'une fois, quel que soit le nombre de lignes qui le montrent.
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
Douze lignes de facture tiennent sur une page, trente en occupent deux, la seconde reprenant l'en-tête et la mise en page de la première.
Ce qu'une cellule peut faire de son propre rectangle : la marge, la bordure, la place à l'intérieur, le fond.
Les quatre côtés d'une cellule en quatre couleurs différentes, et des fonds colorés distingués des bordures colorées.
Un long tableau confié d'un bloc, qui décide lui-même de son découpage en pages : son en-tête en haut de chaque page, sa note en bas de chaque page, ses fonds gris définis une seule fois pour tout le tableau, et une mention que l'on trace soi-même sous chaque page, à l'endroit exact que le tableau indique.
Une fiche technique dont les cellules sont fusionnées sur la hauteur : chaque groupe est nommé une seule fois en face de toutes ses lignes, avec une remarque à côté ; les traits de séparation s'arrêtent au bord de ces cellules, et une remarque trop longue pour les lignes qu'elle couvre les fait grandir.
La même liste de pièces deux fois : quatre colonnes qui se partagent la largeur à parts égales, puis la référence, la quantité et le prix chacun aussi large que sa propre cellule la plus large, la désignation prenant tout ce qu'ils laissent.