PHP-Bibliotheken

Generieren von PDFs mit PHP

Für die Generierung von PDF-Dokumenten gibt es viele Anlässe. Internet Magazin zeigt, wie Sie die Dateien aus PHP heraus erzeugen.

  1. Generieren von PDFs mit PHP
  2. Erste Schritte
  3. Einfügen von Grafiken
image.jpg

© Internet Magazin

Egal, ob Sie von Ihrer Webseite heraus eine Auftragsbestätigung generieren oder Ihren Gästen die Option bieten möchten, bestimmte Inhalte herunterzuladen - in beiden Fällen bietet sich PDF als neutrales Format an. Unter PHP gibt es einige Bibliotheken, welche die grundlegenden Funktionen zum Erzeugen eines PDF-Dokuments abdecken. Weit verbreitet ist Pdflib von der Münchner Firma Pdflib GmbH (www.pdflib.com/de/pdflib-gmbh/ ).Diese Bibliothek hat es sogar in das Standardpaket von Xampp und auf die Webseite von PHP.net geschafft. Für die folgenden Beispiele greifen wir auf diese Bibliotheken zurück. Eine detaillierte Installationsanleitung für diverse Umgebungen finden Sie online auf der Pdflib-Webseite unter www.pdflib.com/fileadmin/pdflib/pdf/support/PDFlib-in-PHP-HowTo.pdf .

Installation

Laden Sie sich die Dateien vom Webserver von Pdflib und entpacken Sie diese im PHP-Verzeichnis für Erweiterungen (ext). Fügen Sie der php.ini für Windows die Zeile

extension=php_pdflib.dll

und für Linux

extension=pdf.so

ein und speichern Sie die Datei. Starten Sie Ihren Apache-Webserver neu. Ob Ihre Installation erfolgreich war, sehen Sie nach Aufruf von phpinfo():

<?phpinfo()?>

Hat alles funktioniert, finden Sie im Dokument einen Abschnitt mit der Überschrift pdf und Verweise auf die installierte Version sowie den Hersteller Pdflib GmbH.

Erste Schritte

image.jpg

© Internet Magazin

Mit dem Code-Grundgerüst erzeugen Sie ein einfaches PDF-Dokument.

Eine komplette Übersicht aller Befehle von Phplib finden Sie in der PHP-Dokumentation. In den folgenden Beispielen zeigen wir Ihnen, welches Grundgerüst an Befehlen Sie für die Erzeugung eines PDF-Dokuments benötigen und wie Sie dieses an Ihre eigenen Anforderungen anpassen.Im ersten Schritt erzeugen Sie ein Pdflib- Objektdfscxvf mit den Standardwerten - über dieses steuern Sie die weitere Verarbeitung.

$p = PDF_new();

Falls es beim Erzeugen der neuen PDF-Datei zu einer Fehlermeldung kommen sollte, geben Sie diese aus und beenden Sie die Verarbeitung.

if (PDF_begin_document($p, "", "")
== 0) {
die("Aufgetretener Fehler: " . PDF_
get_errmsg($p));
}

Nicht zwingend notwendig, jedoch für spätere Belange nicht unwichtig, sind administrative Angaben zum Dokument. Dabei stehen Ihnen verschiedene Eigenschaften zur Verfügung: Autor (author), erzeugende Instanz (creator), Titel des Dokuments (title), Inhalt des Dokuments (subject) und Schlüsselbegriffe (keywords).

PDF_set_info($p, "Creator", "PHP
Skript");
PDF_set_info($p, "Author", "Andreas
Hitzig");
PDF_set_info($p, "Title", "Mein
erstes PDF auf PHP");

Ein PDF-Dokument besteht aus einer beliebigen Anzahl von Seiten. Eine solche definieren Sie mit dem Befehl PDF_begin_page_ext() und geben dabei das Format der Seite mit. Eine DIN-A4-Seite hat eine Größe von 595 x 842 Punkten:

PDF_begin_page_ext($p, 595, 842, "");

Weitere gebräuchliche Maße finden Sie online in der PDF-Dokumentation des Befehls (de2.php.net/manual/en/function.pdfbegin-page-ext.php ).Bevor Sie einen Text ausgeben, legen Sie die Schrift und die Schriftgröße fest. Achten Sie darauf, eine Standard-Schrift zu verwenden, die auf jedem Computer vorhanden ist, da Sie diese ansonsten mit im PDF-Dokument übergeben müssten.Die Definition der Schriftart ist ein zweistufiger Prozess: Als Erstes laden Sie eine Schriftart und anschließend definieren Sie die entsprechende Schriftgröße.

$font = PDF_load_font($p, "Courier",
"winansi", "");
PDF_setfont($p, $font, 24.0);

Mehr zum Thema

Youtube Sperre umgehen GEMA
Videos freischalten

So umgehen Sie die GEMA-Sperre bei Youtube. Was Sie dazu brauchen, und wie es am einfachsten geht.
Neue Fritzboxen unterstützen den AC-Standard.
WLAN-Geschwindigkeit verdoppeln

Mehr WLAN-Geschwindigkeit: Mit dem WLAN-Standard 802.11ac und den richtigen Geräten und Einstellungen verdoppeln Sie den Datendurchsatz.
Netflix auf dem TV
Programm in der Übersicht

Welche Filme und Serien gibt es bei Netflix eigentlich zu sehen? Was ist neu im Streaming-Angebot? Diese Antworten helfen weiter.
Netflix
Streaming

Preise, kompatible Geräte, Datenrate, Serien- und Filmangebot von Netflix: Wir beantworten die wichtigsten Fragen rund um den Streaming-Dienst.
Ben Stiller Owen Wilson Zoolander Hansel
Vorschau auf Film- und Serien-Highlights

Prime Instant Video lockt im September mit Highlights wie "Zoolander 2", "Die Tribute von Panem – Mockingjay 2" und der neuen Staffel von "Mr.…