Tutorial 1 - Ein einfaches Beispiel

Ein einfaches Beispiel für die Verwendung von FPDF

Vielen Dank für die Übersetzung an:
Tobias Zambelli


Los geht's mit dem klassischen Beispiel:

<?php

require('fpdf.php');
$pdf=new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hallo Welt!');
$pdf->Output();

?>

[Demo]

Nachdem man die Bibliothekdatei inkludiert hat erstellt mein ein FPDF Objekt. Der FPDF() Constructor wird hier mit den Standardwerten verwendet: Die Seiten sind in A4 Hochformat und die Maßeinheit ist Millimeter. Man kann es explizit spezifieren mit:

<?php

$pdf=new FPDF('P','mm','A4');

?>

Es ist auch möglich Querformat zu verwenden (L), andere Seitenformat (wie z.B. Letter und Legal) und Maßeinheiten (pt, cm, in).

Es besteht noch keine Seite, also müssen wir eine mit AddPage() erstellen. Der Ausgangspunkt ist in der Ecke oben links und die aktuelle Position ist standardmäsig 1 cm von den Rändern entfernt; die Ränder können mit SetMargins() geändert werden.

Bevor wir den Text ausgeben können, ist es zwingend notwendig eine Schriftart mit SetFont() auszuwählen, ansonsten wäre das Dokument ungültig. Wir wählen Arial fett 16:

<?php

$pdf->SetFont('Arial','B',16);

?>

Wir hätten den Text auch kursiv (mit I), unterstrichen (mit U), normal (mit einem leeren String) oder jede Art der Kombinationen (z.B. BI) definieren k&oml;nnen. Man beachte, daß die Schriftgröße in Punkten definiert wird, nicht in Millimeter (oder eine andere definiert Einheit); dies ist die einzige Ausnahme. Die anderen Standardschriftarten sind Times, Courier, Symbol und ZapfDingbats.

Wir können jetzt eine Zelle mit Cell() ausgeben. Eine Zelle ist ein rechteckiges Gebiet, wahlweise mit einem Rand, welches einen Text enthält. Es wird an der aktuellen Position ausgegeben. Wir spezifizieren seine Größe, den Text (zentriert oder ausgerichtet), ob Ränder angezeigt werden sollen und wo die aktuelle Position nach dem Text hinspringen soll (nach rechts, unterhalb oder zum Anfang der nächsten Zeile). Um einen Rahmen hinzuzufügen würden wir folgendes tun:

<?php

$pdf->Cell(40,10,'Hallo Welt!',1);

?>

Um eine neue Zelle mit zentriertem Text neben der soeben erstellten Zelle zu erstellen und die aktuelle Position in die nächste Zeile zu setzen würden wir folgendes tun:

<?php

$pdf->Cell(60,10,'Powered by FPDF.',0,1,'C');

?>

Anmerkung: Der Zeilenumbruch kann auch mit Ln() gemacht werden. Diese Methode erlaubt es zusätzlich die Höhe des Zeilenumbruchs zu definieren.

Letztendlich wird das Dokument geschlossen und an den Browser mit Output() gesandt. Wir hätten es als Datei speichern können, indem wir in die Klammern einen entsprechenden Dateinamen geschrieben hätten.

Vorsicht: wenn das PDF zum Browser geschickt wird muss nichts anderes ausgegeben werden, weder davor noch danach (am wenigsten Leerzeichen oder Wagenrückläufe). Wenn man davor Daten verschickt erhält man eine Fehlermeldung: "Some data has already been output to browser, can't send PDF file". Wenn man Daten danach verschickt wird der Browser eine leere Seite wiedergeben.