Blueprint-Struktur
{
"seite": "/pdf",
"titel": "PDF-Satz",
"warum": "Markdown setzen, Seiten als Bilder sehen, als PDF laden, ein Wort trennen -- Blueprint statt Vorlage (KBE15); die Seitenvorschau ist das Baustein bildreihe, die Vorlagenwahl die Vorbelegung des Formulars (entschieden 22.09.2026)",
"modul": "export.pdf",
"bereiche": {
"satz": {
"rolle": "steuerung",
"gewicht": 2,
"mindest": "18rem",
"warum": "Text, Vorlage und Optionen: was gesetzt wird"
},
"vorschau": {
"rolle": "arbeit",
"gewicht": 3,
"warum": "die gerasterten Seiten -- hier sieht man, was der Satz tut"
},
"probe": {
"rolle": "begleitung",
"entbehrlich": true,
"gewicht": 1,
"warum": "die Trennprobe begleitet, sie ist nicht die Arbeit; auf dem Telefon einklappbar"
}
},
"bausteine": [
{
"id": "setzen",
"el": "formular",
"in": "satz",
"fn": "export.pdf.preview_pages",
"titel": "Setzen",
"vorgaben": {
"layout": "standard",
"seiten": 4,
"aufloesung": 96
},
"vorbelegung": {
"feld": "layout",
"fn": "export.pdf.layouts",
"ziel": "options"
},
"warum": "preview_pages setzt und rastert in einem Aufruf; die Wahl der Vorlage belegt options mit deren Abweichungen vor (export.pdf.layouts), aenderbar bleibt es"
},
{
"id": "laden",
"el": "aktion",
"in": "satz",
"text": "PDF laden",
"rolle": "primary",
"fn": "export.pdf.render_base64",
"body": {
"markdown": "$feld:markdown",
"layout": "$feld:layout",
"options": "$feld:options"
},
"herunterladen": {
"feld": "pdf",
"typ": "application/pdf",
"name": "$feld:layout"
},
"warum": "dieselben Eingaben wie beim Setzen, die Antwort als Datei -- ein Knopf, kein zweites Formular"
},
{
"id": "seiten",
"el": "bildreihe",
"in": "vorschau",
"titel": "Vorschau",
"quelle": "$ergebnis.seiten",
"gesamt": "$ergebnis.gesamt",
"hinweis": "$ergebnis.hinweis",
"fallback_fn": "export.pdf.vorschau_einrichten",
"warum": "die Seitenbilder aus preview_pages; fehlt der Rasterer, steht der Hinweis und der Knopf zum Einrichten da -- nur auf Klick (KBE7)"
},
{
"id": "trennen",
"el": "formular",
"in": "probe",
"fn": "export.typo.split_word",
"titel": "Trennprobe",
"warum": "ein Wort, seine Trennstellen -- die Probe, ob die Silbentrennung stimmt"
}
],
"art_blueprint": "seite"
}