Un ticket de caisse sur un rouleau de papier

Une caisse de comptoir imprime sur un rouleau de 80 mm de large, et un rouleau n'a pas de bord du bas : le papier est coupé là où le panier s'arrête. La page fait donc la longueur de ce qui a été acheté, et aucun chiffre n'y est écrit d'avance. Une ligne vaut sa quantité fois son prix unitaire, la TVA de chaque taux est prise sur le TTC qui la porte, et le rendu est ce qui reste du billet donné. Passez un article de plus et le rouleau grandit d'une ligne, les totaux toujours en dessous.

Le code-barres du bas est ce que le magasin lit quand le ticket revient — un retour, un échange, une garantie. Personne ne choisit son jeu à la main : la bibliothèque lit le numéro du ticket, n'y trouve que des chiffres, et l'écrit deux chiffres par symbole, 112 modules là où épeler le numéro caractère par caractère en prendrait 189. Dire s'il se lit revient à un scanner, et un scanner le dit : un décodeur est pointé sur la page rendue et relit le numéro.

Ce que montre cet exemple

  • Un rouleau de 80 mm de large, coupé aussi long que le panier le demande.
  • Six articles, la TVA rassemblée par taux, et le rendu de monnaie calculé sur le billet donné.
  • Le numéro du ticket porté en code-barres, dans le jeu que la bibliothèque choisit pour lui.

Le code source complet

Rien n'est omis et rien n'est simplifié : c'est le programme exactement tel qu'il tourne, pour celui qui écrit vos logiciels.

Voir le code Rust Voir le code Python

Le document lui-même

Ouvrir le document en anglais Ouvrir le document en français

Des exemples voisins de celui-ci

Une facture commerciale

Une facture dont les lignes et les totaux tombent là où le texte les mène, et dont le code carré permet à un téléphone de payer la somme exacte sur le compte exact sans rien retaper.

Un bon de livraison

Le bon qui voyage avec la marchandise : un code-barres en regard de chaque article, une case que le destinataire coche, et le code propre à l'expédition.

Un bulletin de paie

Un bulletin de paie : dix-huit lignes de cotisations avec les parts salariale et patronale, le mois face au cumul annuel.

Un contrat de prestation de deux pages

Un contrat de prestation sur deux pages où aucune clause n'est jamais coupée en deux par un changement de page, et qui finit par des cases de signature, de nom et de date remplies à l'écran.

Un certificat au format paysage

Un certificat dont l'encadrement, le ruban et le sceau sont dessinés au trait plutôt que photographiés : net à toutes les tailles, et pour une fraction du poids.

Une carte d'embarquement

Une carte d'embarquement qui donne, sous forme de code carré, la seule ligne que lisent les portes d'un aéroport — un caractère à la mauvaise place et elle est refusée.

Tous les exemples, par sujet