Ein Kassenbon auf einer Papierrolle

Eine Ladenkasse druckt auf eine 80 mm breite Rolle, und eine Rolle hat keine Unterkante: Das Papier wird dort abgeschnitten, wo der Einkauf endet. Die Seite ist also so lang wie das Gekaufte, und keine Zahl darauf steht vorher fest. Eine Zeile ergibt sich aus Menge mal Stückpreis, die Steuer zu jedem Satz wird aus dem Bruttobetrag herausgerechnet, der sie trägt, und das Wechselgeld ist, was vom übergebenen Schein übrig bleibt. Ein Artikel mehr, und die Rolle wächst um eine Zeile, mit den Summen weiterhin darunter.

Der Barcode am Fuß ist das, was der Laden scannt, wenn der Bon zurückkommt — eine Rückgabe, ein Umtausch, ein Garantiefall. Nichts wählt seinen Codesatz von Hand: Die Bibliothek liest die Bonnummer, findet darin nur Ziffern und packt jeweils zwei Ziffern in ein Symbol, 112 Module, wo das Ausschreiben der Nummer Zeichen für Zeichen 189 bräuchte. Ob er sich scannen lässt, sagt ein Scanner, und einer sagt es: Ein Decoder wird auf die erzeugte Seite gerichtet und liest die Nummer zurück.

Was dieses Beispiel zeigt

  • Eine 80 mm breite Rolle, so lang abgeschnitten, wie der Einkauf es ergibt.
  • Sechs Artikel, die Steuer nach Satz zusammengefasst und das Wechselgeld aus dem übergebenen Schein berechnet.
  • Die Bonnummer als Barcode, in dem Codesatz, den die Bibliothek dafür wählt.

Der Quellcode, vollständig

Nichts ist weggelassen und nichts vereinfacht: Das ist das Programm genau so, wie es läuft, für den Entwickler, der diese Bibliothek nutzt. Die dritte ist die Beschreibung selbst: eine schlichte Liste dessen, was die Seite sagen muss, und das wird dem Dienst gesendet.

Den Rust-Quellcode lesen Den Python-Quellcode lesen Den JSON-Quellcode lesen

Das Dokument selbst

Das Dokument auf Englisch öffnen Das Dokument auf Französisch öffnen Das Dokument auf Deutsch öffnen Das Dokument auf Spanisch öffnen Das Dokument auf Italienisch öffnen Das Dokument auf Portugiesisch öffnen

Beispiele in der Nähe

Eine Handelsrechnung

Eine Rechnung: Jede Rechnungsposition folgt auf die vorige, die Summen stehen unter der letzten, und der QR-Code enthält die Überweisung. Der Kunde richtet ein Telefon darauf, und die Banking-App bietet genau den Betrag auf genau das Konto an, ohne dass etwas abgetippt wird.

Ein Lieferschein

Der Schein, der mit der Ware reist: ein Barcode an jedem Artikel, ein Kästchen, das der Empfänger ankreuzt, und der eigene Code der Sendung.

Eine Gehaltsabrechnung

Eine Gehaltsabrechnung: achtzehn Beitragszeilen mit Arbeitnehmer- und Arbeitgeberanteil und für jede der Monatsbetrag und dann die Summe seit Januar. Jede Zahl ist mit der Zeile und der Spalte verknüpft, unter der sie steht, für eine Software, die die Seite vorliest.

Ein zweiseitiger Dienstleistungsvertrag

Ein Dienstleistungsvertrag über zwei Seiten, in dem keine Klausel je durch einen Seitenwechsel halbiert wird, mit Feldern für Unterschrift, Name und Datum am Ende, die am Bildschirm ausgefüllt werden.

Eine Urkunde im Querformat

Eine Urkunde, deren Rahmen, Band und Siegel als Linien gezeichnet statt fotografiert sind: scharf in jeder Größe und nur ein Bruchteil des Gewichts.

Eine Bordkarte

Eine Bordkarte, die als QR-Code die eine Zeile trägt, die die Gates eines Flughafens lesen — ein einziges falsch gesetztes Zeichen, und sie wird abgewiesen.

Jedes Beispiel, nach Thema