Skip to main content

Seiten als PDF zur Verfügung stellen

In diesem Kurztutorial ist beschrieben, wie man Seiten mit pdf_generator2 (hotfix for TYPO3 4.6) als PDF Dokument zum Download zur Verfügung stellt.

Über den Extensionmanager installieren Sie die Extension pdf_generator2_hotfix.

Sofern zuvor pdf_generator2 installiert wurde, muss diese zunächst deinstalliert werden.

Die Defaulteinstellungen im EM können beibehalten werden. Dort ist für die Druckversion der Seitentyp 123 definiert.

Extensiontemplate für pdf_generator2 erstellen

Erstellen Sie nun ein Extensiontemplate für pdf_generator2 (hotfix for TYPO3 4.6)

pdf_generator2 = PAGE 
pdf_generator2 {
 typeNum = 123 
 }
lib.pdflink = TEXT
lib.pdflink.value = pdf 
lib.pdflink.postUserFunc = tx_pdfgenerator2->makePdfLink 
lib.pdflink.postUserFunc.include_post_vars = 1 
lib.pdflink.postUserFunc.target = _blank

Link zur Druckversion ausgeben

Damit der Link zur Druckversion ausgegeben wird, erstellen Sie folgendes TS in dem Template, in dem der Marker für den Content gesetzt ist. In diesem Fall ist der Content über den Marker ###COL3### definiert. Die Druckversion, also der Link soll oberhalb des Contents angezeigt werden. Dafür sorgt die „5“.

 COL3 = COA
 COL3 {
 stdWrap.wrap = <div class="col3"> | </div>
 stdWrap.required = 1
 10 < styles.content.get
 5 = TEXT
 5 {
 wrap = <div class="printlink"> | </div>
 value = Download als PDF
 postUserFunc = tx_pdfgenerator2->makePdfLink
 postUserFunc.target = _blank
 } 
 }

 

HTML Template für PDF erstellen

Ein HML Template für die Druckseite soll nun erstellt und zugewiesen werden.

 10 = TEMPLATE 
 10 { 
 template = FILE
 template.file = fileadmin/page/html/printtemplate.html 
 # benötigte Marker kopieren 
 marks { 
 LOGO < page.10.marks.LOGO 
 COL3 < page.10.marks.COL3 
 # Entfernt den PDF Link aus dem PDF 
 COL3.5 > 
 } 
 }
 # Standard PDF Generator Konfiguration entfernen
 50 >
 }

Eigene Schriften und CSS-Anweisungen einbinden

Jetzt wird es interessant: Im Internet sind eine Menge Anleitungen unterwegs, wie man andere Schriften zuweisen kann. Viel Aufwand.

Aber es geht auch ganz einfach, wenn es z. B. um Schriften wie Arial geht (die die Extension kennt – nachschauen, welche das sind). Standard ist Times. Im HTML Template habe ich ein <head> eingefügt und dort das CSS zugewiesen und Schrift und Linkfarben angepasst. Ende!

Ganz ohne irgendwelche Schriften als ttf und irgendwelche Libs einzubinden.