pixel
Seite wählen

PDF's mit Showoff

von | Jan 22, 2016 | Technology

Graphite_TrainingShowoff habe ich ja bereits in einem früheren Blogpost näher behandelt. Heute möchte ich nun etwas über die PDF-Generierung mit Showoff berichten, da hier die ein oder andere Stolperstelle überwunden werden muss.
Generell gibt es drei Möglichkeiten um über Showoff PDF’s zu erstellen, für die ersten beiden muss Showoff zwingend im Präsentationsmodus mit showoff serve gestartet sein. Über den Aufruf http://localhost:9090/pdf, der übrigens auch über einen Button im Presenter-Modus ausgewählt werden kann, ist es nun möglich ein PDF der Präsentation zu erstellen. Leider funktioniert diese Methode nur mit der Masterpräsentation, d.h. supplementäre Aufrufe wie für Exercises oder Solutions (siehe: https://github.com/puppetlabs/showoff/blob/master/documentation/AUTHORING.rdoc) funktionieren damit nicht.
Die zweite Möglichkeit ist der Aufruf über http://localhost:9090/print im Druckmodus. Das Drucken wird hier noch manuell durchgeführt, also brauchen wir dafür einen lokalen PDF-Drucker. Im Gegensatz zur ersten Methode können hier auch die ergänzenden Bereiche beispielsweise über http://localhost:9090/supplemental/exercises aufgerufen werden. Beide bisher vorgestellten Möglichkeiten haben jedoch einige Probleme gemeinsam: Unterschiedliche Browservarianten und teilweise auch verschiedene Browserversionen interpretieren das dahinter liegende CSS oft anders. Dadurch bekommt man leider oft sehr schlechte Druckergebnisse. Ein weiteres Problem ist das diese Vorgänge nicht automatisierbar sind und daher immer von jemandem manuell durchgeführt werden müssen.
Daher nun also die dritte Möglichkeit: Das Showoff-Kommando lässt sich auf der CLI mit einem Parameter namens static aufrufen, dazu muss die Präsentation also nicht einmal gestartet werden. Dieser static-Parameter unterstützt auch die supplementären Teile:

# showoff static print
# showoff static supplemental exercises

Danach befindet sich im neuen Unterordner “static” eine HTML-Datei (index.html). Mit weiteren Tools wie beispielsweise wkhtmltopdf kann nun daraus im Anschluss ein PDF-Dokument erstellt werden. Der große Vorteil dabei ist, das nun ganz einfach auch Seitenzahlen oder ein Copyright-Hinweis hinzugefügt werden kann. Ein Beispielaufruf von wkhtmltopdf sieht so aus:

# wkhtmltopdf -s A5 --print-media-type --footer-left [page] --footer-right '© NETWAYS' static/index.html /HAPPY/NEW/YEAR.pdf

Wer nun schon ganz gespannt auf das Ergebnis ist, dem möchte ich unsere Trainings nahe legen, denn da kommt genau das zum Einsatz.

Markus Waldmüller
Markus Waldmüller
Lead Consultant

Markus war bereits mehrere Jahre als Sysadmin in Neumarkt i.d.OPf. und Regensburg tätig. Nach Technikerschule und Selbständigkeit ist er nun Anfang 2013 bei NETWAYS als Lead Senior Consultant gelandet. Wenn er nicht gerade die Welt bereist, ist der sportbegeisterte Neumarkter mit an Sicherheit grenzender Wahrscheinlichkeit auf dem Mountainbike oder am Baggersee zu finden.
Mehr Beiträge zum Thema Technology

Elasticsearch: Herzstück des Elastic Stack

Nachdem wir uns im letzten Blogpost den Elastic Stack im Allgemeinen angesehen haben, wollen wir uns heute auf den Teil Elasticsearch konzentrieren. Gerade zum Thema Elasticsearch gibt es aufgrund der Mächtigkeit des Tools eine Vielzahl an Fakten und Features. Wie im...

Icinga for Windows Preview: Visualisiert eure Metriken!

Icinga hat in seinem Blogpost mitgeteilt, dass es mit Icinga for Windows v1.10.0 einige Änderungen an den Performance Metriken geben wird. Hier wollen wir einmal grob zusammenfassen, worum es geht und welche Auswirkungen diese Änderungen haben. Für alle Details ist...

Skalierungseffekte von freier Software

Ein beliebtes Argument für den Einsatz von quelloffener (und idealerweise freier) Software ist, dass sie billiger wäre als eine vergleichbare proprietäre Lösung. Diese Annahme erscheint intuitiv richtig, schließlich ist diese Software oft einfach auffindbar und kostet...

Log Management mit dem Elastic Stack

Auch zum Thema Elastic Stack können wir Euch eine Reihe an Unterstützung in Form von Consulting, Support und Trainings anbieten. Daher möchte ich Euch heute als Einstieg kurz vorstellen, was der Elastic Stack für Euch tun kann und wo der Mehrwert darin steckt, dieses...