Ein Handbuch, das sagt, wie es gelesen werden möchte
Sie verschicken ein hundertseitiges Handbuch. Wer es öffnet, landet auf dem Umschlag, halb vergrößert, ohne Kapitelliste in Sicht — und nun muss jemandem gesagt werden, wohin er klicken soll. Ein PDF kann selbst sagen, wie es geöffnet werden möchte: auf dieser Seite, in dieser Größe, mit der Kapitelliste bereits seitlich aufgeklappt. Es ist ein Wunsch, kein Befehl. Desktop-Anzeigesoftware wie Adobe Acrobat Reader befolgt das meiste davon; die in einen Browser eingebaute Anzeigesoftware befolgt wenig davon, und jeder Browser zieht seine eigene Grenze. Öffnen Sie das Dokument unten in beiden, eines nach dem anderen, und der Unterschied ist in fünf Sekunden zu sehen.
Seine Seite drei druckt die ganze Liste dessen, was es verlangt, damit Sie diese Liste mit dem vergleichen können, was Ihre eigene Anzeigesoftware tatsächlich getan hat. Es bittet darum, auf dem Inhaltsverzeichnis statt auf dem Umschlag zu öffnen, damit niemand auf einer Titelseite beginnt, für die er nicht gekommen ist. Es bittet darum, das Fenster mit dem Gezeichneten statt mit dem Papier drumherum zu füllen, damit die Wörter lesbar sind, ohne etwas anzufassen. Es bittet um die Seiten zu zweit mit dem Umschlag für sich, so wie ein Buch aufklappt. Und es sagt, was der Druckdialog anbieten soll — welche Seiten, beidseitig, wie viele Exemplare —, damit niemand, der es druckt, jedes Mal dieselben vier Einstellungen vornehmen muss. Bei einem Handbuch, einem Katalog oder einer Preisliste, die sich für alle gleich öffnen muss, ist das der Unterschied zwischen einer Datei und einem Dokument.
Was dieses Beispiel zeigt
- Die Seite, mit der es sich öffnet, wie viel des Fensters sie füllt, und die Kapitelliste daneben.
- Jeweils zwei Seiten, mit dem Umschlag für sich.
- Ein Druckdialog, der bereits ausgefüllt erscheint, und die ganze Liste auf Seite drei gedruckt, um sie damit abzugleichen.
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