PDF Erstellung mit HTML und CSS Paged Media
Beispielprojekt zum Artikel PDFs mit HTML und CSS automatisiert erstellen auf heise.de/developer:
https://www.heise.de/hintergrund/Auf-Knopfdruck-PDFs-in-Anwendungen-erstellen-mit-HTML-und-CSS-Modul-6457863.html
HTML und CSS Paged Media
Example 1
Beispiel 1 zeigt die Verwendung von HTML und CSS Paged Media zur Erstellung eines Dokuments im A4 Layout.
Example 2
In Beispiel 2 wird ein Ticket erstellt, welches ein eigenes Format hat und einen QR-Code als SVG beinhaltet
PDF Erstellung mit einer Spring Boot Anwendung
Dieses Beispiel zeigt die Erstellung von PDF Dokumenten mit einer Java Anwendung.
Die Daten werden von einem Open Data Datensatz der Stadt Wien geladen.
https://www.data.gv.at/katalog/dataset/336bbdae-a29d-47c5-8c0d-f51affffd44f
PagedMedia
Das PDF-Dokument wird mit HTML und CSS Paged Media erstellt, wobei HTML Templates zum Einsatz kommen. Als Template Engine wird Thymeleaf (https://www.thymeleaf.org/) verwendet.
Mit dem OpenDataService
werden die Daten von der JSON Datei geladen und anschließend transformiert.
Die aufbereiteten Daten werden dann in die Datenstruktur für den Report als Chapter
überführt. Dabei wird auch das Inhlatsverzeichnis erstellt.
Anschließend wird das Template mit den Reportdaten befüllt und daraus das fertige HTML erstellt.
Mit der HTML Datei und den Stylesheets wird der PrinceWrapper
zur Erstellung des PDF Dokuemnts aufgerufen.
Apache FOP
Die Daten liegen in einer XML Datei vor und gemeinsam mit einem XSLT Dokument wird daraus ein PDF erstellt.
Apache PDFBox
Es wird ein PDF-Dokument mit der Bibliothek PDFBox erstellt.