
TYPO3 Plugin:
fluid_fpdf
Fluid-FPDF für TYPO3
Diese Erweiterung bietet Ihnen einen kompletten Satz ViewHelpers für den Umgang mit FPDF unter Verwendung von Fluid. Sie können die Funktion ViewHelpers einfach in eigenen Extensions durch die Definition des fpdf-Namensraums. Zusätzlich können Sie das eingebaute Plugin verwenden, um vordefinierte PDF-Dateien anzuzeigen. Dieses Plugin bietet Ihnen automatisch alle verfügbaren PDFs.
Merkmale:
- Fluid-ViewHelper für alle FPDF-Funktionen
- Einsetzbar in eigenen Erweiterungen
- Definieren Sie PDFs mit Hilfe von Fluid-Vorlagen vor und stellen Sie sie Ihren Seiteneditoren zur Verfügung
ViewHelpers
fpdf:addFont
Importiert eine TrueType-, OpenType- oder Type1-Schriftart und stellt sie zur Verfügung. Es ist notwendig, zuerst eine Font-Definitionsdatei mit dem MakeFont Utility zu erstellen. Die Definitionsdatei (und die Schriftartendatei selbst beim Einbetten) muss im Schriftartenverzeichnis vorhanden sein. Wenn es nicht gefunden wird, der Fehler "Could not include font definition file" wird ausgegeben.
Parameter
Name | Typ | Standard | Beschreibung |
---|---|---|---|
familie | zeichenkette | Schriftfamilie. Der Name kann beliebig gewählt werden. Wenn es sich um einen Standardfamiliennamen handelt, überschreibt er die entsprechende Schriftart. | |
stil | zeichenkette | Schriftart. (N: normal, B: fett, I: kursiv) | |
dateiname | zeichenkette | Die Schriftartendefinitionsdatei. Standardmäßig setzt sich der Name aus Familie und Stil zusammen, in Kleinbuchstaben ohne Leerzeichen. |
Rückgabe
lücke
Verwendung:
<fpdf:setFont family="Arial" style="B" size="10.5" />
fpdf:pdf
Erstellt eine neue PDF-Datei.
Parameter
Name | Typ | Standard | Beschreibung |
---|---|---|---|
dateiname | zeichenkette | FluidFpdf.pdf | Der Name der Datei |
ziel | zeichenkette | I | Zielort, an den das Dokument gesendet werden soll. Es kann einen der folgenden Werte annehmen: I, D, F, S |
orientierung | zeichenkette | P | Standard-Seitenausrichtung. |
einheit | zeichenkette | mm | Benutzereinheit. |
größe | zeichenkette | A4 | Die Größe, die für Seiten verwendet wird. |
titel | zeichenkette | Fluid-Fpdf | Definiert den Titel des Dokuments. |
subjekt | zeichenkette | Fluid-Fpdf | Definiert den Betreff des Dokuments. |
autor | zeichenkette | Fluid-Fpdf | FDefiniert den Autor des Dokuments. |
schlüsselwörter | zeichenkette | TYPO3 Fluid FPDF typo3@coding.ms | Ordnet dem Dokument Schlüsselwörter zu, in der Regel in der Form'Schlüsselwort1 Schlüsselwort2 ....'. |
fontPath | zeichenkette | EXT:fluid_fpdf/Ressourcen/Private/Fonts | Definiert den Schriftartenpfad für die eingebundenen Schriften (z.B.: EXT:fluid_fpdf/Resources/Private/Fonts) oder einen TYPO3-Pfad wie /fileadmin/fonts/fonts/ |
bildpfad | zeichenkette | EXT:fluid_fpdf/Ressourcen/Privat/Bilder | Definiert den Bildpfad für die eingebundenen Bilder (z.B.: EXT:fluid_fpdf/Ressourcen/Private/Bilder) oder einen TYPO3-Pfad wie /fileadmin/fonts/ |
charakterMap | reihe | Definiert eine Zeichenkette für die Zuordnung von Zeichen. Um z.B. ?-Zeichen mit Zeichen bei ASCII-Nr. 162 abzubilden, verwenden Sie {162: '?'} |
Rückgabe
lücke
Verwendung:
<fpdf:pdf>>
<fpdf:addPage orientation="P" size="A4">
// Ihr PDF-Inhalt.....
</fpdf:addPage>
</fpdf:pdf>>
fpdf:setFontFont
Legt die Schriftart fest, mit der Zeichenketten gedruckt werden.
Parameter
Name | Typ | Standard | Beschreibung |
---|---|---|---|
familie | zeichenkette | Arial | Familienschriftart. |
stil | zeichenkette | N | Schriftart. (N: normal, B: fett, I: kursiv, U: unterstrichen) |
größe | zeichenkette | 12 | Schriftgröße in Punkten. |
Rückgabe
lücke
Verwendung:
<fpdf:setFont family="Arial" style="B" size="10.5" />
fpdf:setSourceFile
Legen Sie die Quelldatei für PDF-Seitenvorlagen fest.
Parameter
Name | Typ | Standard | Beschreibung |
---|---|---|---|
datei | zeichenkette | EXT:fluid_fpdf/Ressourcen/Private/Pdf/TYPO3_2012-logo_sRGB_color.pdf | Dateiname mit abs-Pfad der Quelle |
Rückgabe
int
- Anzahl der gefundenen Seiten in der Quelldatei
Verwendung:
<fpdf:setSourceFile file="EXT:fluid_fpdf/Ressourcen/Private/Pdf/Normbriefbogen_DIN5008.pdf" />
fpdf:useTemplate
Druckt eine PDF-Vorlage in eine Seite
Parameter
Name | Typ | Standard | Beschreibung |
---|---|---|---|
seiteNein | int | 0 | Die Seitenzahl |
x | int | 0 | Die x-Position |
y | int | 0 | Die y-Position |
w | int | 0 | Die neue Breite der Vorlage |
h | int | 0 | Die neue Höhe der Vorlage |
adjustPageSize anpassen | boolesch | falsch | Wenn auf true gesetzt, wird die aktuelle Seite in der Größe an die Abmessungen der Vorlage angepasst |
Rückgabe
lücke
Verwendung:
<fpdf:useTemplate pageNo="1" x="0" y="0" w="0" h="0" adjustPageSize="0" />
Häufig gestellte Fragen (FAQ)
So legen Sie ein HintergrundpDF fest
Verwenden Sie dazu z.B. die fpdf:useTemplate-ViewHelper:
<fpdf:pdf>>
<fpdf:addPage orientation="P" size="A4">
<fpdf:setSourceFile file="EXT:fluid_fpdf/Ressourcen/Private/Pdf/Normbriefbogen_DIN5008.pdf" />
<fpdf:useTemplate pageNo="1" x="0" y="0" />
<f:Kommentar>
// Ihr PDF-Inhalt.....
</f:Kommentar>
</fpdf:addPage>
</fpdf:pdf>>
Wie Sie Ihre eigenen Schriften in PDF verwenden können
Um eigene Schriften in Fluid-FPDF zu verwenden, müssen Sie die Schriften in ein spezielles Format konvertieren.
Die FPDF-Website unterstützt ein kleines Konvertierungstool: http://www.fpdf.org/makefont/
Wählen Sie einfach Ihre TTF-Datei aus und wählen Sie die gewünschte Kodierung (z.B. ISO-8859-15). Das Ergebnis sind zwei Dateien - eine Datei php-File und eine z-File.
Sie möchten beispielsweise den Ubunut-Font konvertieren, der in Google-Webfonts verfügbar ist. Du brauchst das regelmäßige und fette schriftart. Nach dem Download erhalten Sie die folgenden Dateien:
- Ubuntu-Regular.ttf
- Ubuntu-Bold.ttf
Nach der Konvertierung haben Sie diese Dateien:
- Ubuntu-Regular.php
- Ubuntu-Regular.z
- Ubuntu-Bold.php
- Ubuntu-Bold.z
Folgen Sie den nächsten Schritten, um die Schriftart zu verwenden:
- Laden Sie diese beiden Dateien in Ihre TYPO3-Installation hoch
- Definiere den neuen Schriftpfad in fpdf:pdf
- Hinzufügen von Schriften mit dem fpdf:addFont
- Stellen Sie die gewünschte Schriftart ein
- Schreiben Sie Ihren Text
<fpdf:pdf fontPath="EXT:theme_bootstrap4/Ressourcen/Private/Fonts">
<!-- Füge benötigte Schriften hinzu -->
<fpdf:addFont family="Ubuntu" style="N" filename="Ubuntu-Regular.php" />
<fpdf:addFont family="Ubuntu" style="B" filename="Ubuntu-Bold.php" />
<fpdf:addPage orientation="P" size="A4">
<!-- Schriftart einstellen -->
<fpdf:setFont family="Ubuntu" style="N" size="12" />
<!-- Schreibe deinen Text -->
<fpdf:multiCell width="100" height="5" text="Hello world" />
<f:Kommentar>
// Ihr PDF-Inhalt.....
</f:Kommentar>
</fpdf:addPage>
</fpdf:pdf>>
Hinweis:
Sie benötigen Unterstützung bei der Konvertierung Ihrer Schriftart? Nehmen Sie Kontakt mit uns auf: typo3@coding.ms
Ein Zeichen meiner Schriftart wird im PDF nicht gut dargestellt (z.B. das ?-Zeichen) - was tun?
Erstellen Sie zunächst einen Character Dump der Zeichenkette, um festzustellen, welche Zeichen verwendet werden:
<fpdf:debug.stringCharacterDump string="1.20 ?" />
Das Ergebnis sollte so aussehen:
1 : 49
. : 46
2 : 50
0 : 48
: 32
? : 63
: 0
Nun wissen Sie, dass Ihr ?-Zeichen durch das Zeichen mit der ASCII-Nummer 63 gesetzt wird.
Im nächsten Schritt führen Sie einen Font-Dump mit der gewünschten Schriftart durch:
<fpdf:debug.fontDump />
In unserem Beispiel wird das Zeichen auf der Nummer 63 mit ? angezeigt - das ist nicht das, was wir erwarten. Werfen Sie einen genaueren Blick auf Ihre font-Dump und suchen Sie nach dem Zeichen ?-Zeichen. Wir haben es auf der ASCII-Nr. 162 gefunden.
FAQ
Wie schreibt man eine PDF-Vorlage, die das PDF als Zeichenkette zurückgibt?
Dies ist nützlich, wenn Sie das erstellte PDF an eine Mail oder etwas anderes anhängen möchten.
<html xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
xmlns:fpdf="http://typo3.org/ns/CodingMs/FluidFpdf/ViewHelpers"
data-namespace-typo3-fluid="true"><f:spaceless>
<f:format.raw>
<fpdf:pdf destination="S">
<fpdf:addPage orientation="P" size="A4">
<fpdf:setFont family="Arial" style="B" size="10" />
<fpdf:text x="10" y="10" text="Hello Pdf-World" />
<fpdf:setXY x="40" y="40" />
<fpdf:cell width="40" height="10" text="Hallo Welt!" />
</fpdf:addPage>
</fpdf:pdf>>
</f:format.raw>
</f:spaceless></html></html>
Wichtig ist, dass es keine Leerzeichen gibt und der PDF-Code nicht übersprungen wird!
Beitrag
Jeder Beitrag ist willkommen! Praktische Dokumentation, Tutorials, Blog-Posts, Bug-Berichte, Bug-Fixierung!
Unterstützung
Benötigen Sie schnelle Hilfe mit dieser Extension? Unser Team von erfahrenen TYPO3-Entwicklern löst Probleme unkompliziert und zum Stundensatz.
Verteilung:FLUID_FPDF ist auf
0.55 % aller TYPO3 installiert.
- 1 % aller TYPO3 9.5.x Installationen installiert
- 1.24 % aller TYPO3 8.7.x Installationen installiert
- 0.26 % aller TYPO3 7.6.x Installationen installiert
- 0.13 % aller TYPO3 6.2.x Installationen installiert
- 0.06 % aller TYPO3 6.1.x Installationen installiert
- 0.43 % aller TYPO3 4.7.x Installationen installiert
- 0.79 % aller TYPO3 4.5.x Installationen installiert
- 0.78 % aller TYPO3 4.4.x Installationen installiert
- 1.86 % aller TYPO3 4.3.x Installationen installiert
- 0.67 % aller TYPO3 4.2.x Installationen installiert
- 1.53 % aller TYPO3 4.1.x Installationen installiert
FLUID_FPDF Version:Verteilung nach installierten Versionen
- 3.85 % FLUID_FPDF v.1.13.0
- 82.69 % FLUID_FPDF v.1.12.0
- 11.54 % FLUID_FPDF v.1.11.1
- 1.92 % FLUID_FPDF v.1.9.0
PHP Version:FLUID_FPDF wird benutzt mit
- 2.78 % PHP/7.0
- 9.72 % PHP/5.6
- 16.67 % PHP/5.5
- 12.5 % PHP/5.4
- 34.72 % PHP/5.3
- 22.22 % PHP/5.2
- 1.39 % PHP/4.4

Gosign-Responsive Index: TYPO3 Installationen nutzen FLUID_FPDF zu
- 14 % wenn der Gosign-Responsive-Index zwischen 80 % und 100 % ist
- 22 % wenn der Gosign-Responsive-Index zwischen 60 % und 80 % ist
- 13 % wenn der Gosign-Responsive-Index zwischen 40 % und 60 % ist
- 51 % wenn der Gosign-Responsive-Index zwischen 20 % und 40 % ist
- 0 % wenn der Gosign-Responsive-Index zwischen 0 % und 20 % ist

Pagespeed: TYPO3 Installationen nutzen FLUID_FPDF zu
- 22 % wenn der Pagespeed zwischen 80 % und 100 % ist
- 37 % wenn der Pagespeed zwischen 60 % und 80 % ist
- 11 % wenn der Pagespeed zwischen 40 % und 60 % ist
- 25 % wenn der Pagespeed zwischen 20 % und 40 % ist
- 10 % wenn der Pagespeed zwischen 0 % und 20 % ist
[DependciesAndConflicts]