PhpRiot
Follow phpriot on Twitter
Sponsored Link
News Archive
PhpRiot Newsletter
Your Email Address:

More information

04.12. PDF nicht nur mit PHP

Note: This article was originally published at Planet PHP on 4 December 2011.
Planet PHP
Eine Suche nach A„php pdfA" bei der Suchmaschine meiner Wahl ergibt eine Vielzahl an Tutorials, Blog-EintrA¤gen und natA¼rlich auch Klassen und Bibliotheken. In diesem Blog-Artikel mA¶chte ich einen knappen Aoberblick A¼ber einige der gebrA¤uchlichsten PHP-Tools zur PDF-Generierung geben und Alternativen zeigen die keine Programmierung erfordern.

PHP: PDF A- Manual

Das erste Suchergebnis fA¼hrt uns auf die PHP Manual Seite. Das braucht Ihr Euch nicht anzuschauen weil es einfach nur verwirrend und unvollstA¤ndig ist. Dahinter steht eine PECL Erweiterung, welche PHP einen Wrapper zur kommerziellen PDFlib bietet.

PDFlib

Ist in Version 8 verfA¼gbar und unterstA¼tzt laut Hersteller verschiedene Features aus Acrobat 9, der PDF-Spezifikation 1.7 extension level 3. Etwas ausfA¼hrlicher betrachtet bedeutet das:

  • Es kann A¼ber Verweise auf Ressourcen in externen PDF-Dokumenten zugegriffen werden.
  • Der Inhalt kann in durch den Benutzer auswA¤hlbare Ebenen aufgeteilt sein welche sich gruppieren
    lassen um zum Beispiel in Sprachspezifischen Ebenen ein und dieselbe Bildebene zu zeigen.
  • Bilder, Seiten und Teile von Seiten kA¶nnen mit Georeferenzen ausgestattet werden.
  • AES-256 VerschlA¼sselung und Unicode PasswA¶rter werden unterstA¼tzt.

Im Gegensatz zum PHP:PDF A- Manual bietet sich auf der Herstellerseite ein Haufen an Dokumentation. Dort findet Ihr neben einem Installations- und Konfigurations-Howto fA¼r PHP, eine 256-seitige PDFlib API Dokumentation und ein 312-seitiges PDFlib Tutorial.

Schon alleine die LA¤nge der API Dokumentation lA¤sst darauf schlieAYen das die PDFlib umfangreiche Funktionen zum gestalten von PDF Dokumenten mit sich bringt. Auszugsweise, wie auch unter A„What's new in PDFlib 8?A" nachzulesen:

  • Bidirektionale Schriftformatierung fA¼r internationale Sprachen und Fallback Fonts.
  • UnterstA¼tzung OpenType spezifischer Font-Features
  • Textumbruch um Bilder, in Pfaden sowie Text an Pfaden entlang
  • Transparenz in TIFF und PNG Bildern
  • Interaktive Formulare
  • Druckvorlagen Farbmanagement PDF/X-4 und PDF/X-5

PDFlib ist ein renommiertes Produkt und auch in PHP kA¶nnen damit professionelle PDF Dokumente erstellt werden.

Zend Framework PDF

Wer etwas weniger komplexe AnsprA¼che an die PDF-Generierung stellt ist auch mit dem Zend_PDF Modul des unter OpenSource Lizenz verA¶ffentlichten Zend Frameworks gut beraten.

  • Laden von PDF Dokumenten (Acrobat 5, Spezifikation 1.4)
  • Versionsverwaltung: Laden von Versionen, Rollback nach A„nderung
  • Schreiben oder Ausgeben und diese VorgA¤nge auf die geA¤nderten Stellen beschrA¤nken
  • Seiten als Vorlagen verwenden, Seiten zu einem Dokument hinzufA¼gen oder entfernen
  • Einfache Vektorgrafikelemente
  • Seitentransformationen (Drehen, Zoomen)
  • 14 gebrauchsfertige A„PDF-FontsA", UnterstA¼tzung von TrueType Fonts
  • UnterstA¼tzung von Sprungzielen, Lesezeichen-MenA¼s, AnhA¤ngen und Aktionen
  • UnterstA¼tzung von Dokument Information und Metadaten

Das erstellen und Laden von PDF Dokumenten geht dank der durchdachten API sehr einfach von statten. Einzig den automatisierten Textumbruch mag man vermissen. Zwar kann man sich anhand der API die Weiten der einzelnen Zeichen berechnen lassen, das erscheint dann aber doch etwas aufwendig zu sein fA¼r jedes Zeichen eines Textes.

Verschiedene Typen von AnhA¤ngen und Aktionen, sofern noch nicht in Zend_PDF enthalten, lassen sich nach LektA¼re der gesuchten FunktionalitA¤t in der 980-seitigen Adobe PDF Reference relativ einfach und schnell integrieren.

FPDF

Verspricht High-Level Funktionen und steht auch unter OpenSource Lizenz zum Download bereit. Ebenso wie bei Zend_PDF werden PDF-Dokumente mit FPDF nur durch Einsatz von PHP generiert und es ist keine weitere Bibliothek notwendig.

  • Auswahl der MaAYeinheit, Seitenformat und -rA¤nder
  • Seitenkopf- und FuAYzeilen Verwaltung
  • Automatisierter Seitenumbruch, Zeilenumbruch und Textausrichtung

bietet FPDF unter anderem und fA¼llt damit die LA¼cke in Bezug auf Automation der Textgestaltung. Es gibt

Truncated by Planet PHP, read more at the original (another 2521 bytes)