Mit der ClibPDF können Sie PDF-Dokumente mit PHP erstellen. Diese
Bibliothek ist zum Herunterladen erhältlich von FastIO, aber für deren kommerzielle
Verwendung ist es erforderlich, dass Sie eine Lizenz erwerben.
Funktionalität und API der ClibPDF sind der PDFlib ähnlich.
Diese Dokumentation sollten Sie zusammen mit dem ClibPDF-Handbuch
lesen, weil letzteres diese Bibliothek viel ausführlicher erklärt.
Die Namen vieler Funktionen in der ClibPDF, im PHP-Modul und in
der PDFlib sind gleich. Außer
cpdf_open() nehmen alle Funktionen die
Bezeichnung des Dokuments als ihren ersten Parameter.
Diese Bezeichnung wird gegenwärtig nicht intern verwendet, weil
ClibPDF die gleichzeitige Erzeugung mehrerer PDF-Dokumente nicht
unterstützt. Da das Ergebnis nicht vorhersehbar ist, sollten Sie
es am besten nicht einmal testen. Die Folgen, die das in einer
multi-threaded Umgebung hätte, kann ich nicht abschätzen. Laut
ClibPDF-Autor wird sich das in einer der nächsten Versionen ändern
(als dieses geschrieben wurde, war Version 1.10 aktuell).
Verwenden Sie das pdflib-Modul, wenn Sie diese Funktionalität
benötigen.
Anmerkung:
Die Funktion cpdf_set_font() hat sich seit
PHP 3 geändert und unterstützt nun asiatische Zeichensätze. Der
Kodierungsparameter ist keine Zahl mehr, sondern eine
Zeichenkette.
Eine nette Eigenschaft der ClibPDF (und der PDFlib) ist die Möglichkeit, das
PDF-Dokument vollständig im Speicher zu erzeugen, ohne temporäre
Dateien zu verwenden. Sie bietet auch die Möglichkeit, Koordinaten
in einer vordefinierten Längeneinheit zu übergeben. Dies ist eine
praktische Fähigkeit, die bei Verwendung der PDFlib aber auch mit
pdf_translate() simuliert werden kann.
Eine weitere nette Eigenschaft von ClibPDF ist die Tatsache, dass
jede Seite jederzeit geändert werden kann, selbst wenn schon eine
neue Seite geöffnet wurde. Die Funktion
cpdf_set_current_page() erlaubt es, die
aktuelle Seite zu verlassen und mit den Änderungen einer anderen
Seite fortzufahren.
Die meisten Funktionen sind ziemlich einfach zu benutzen. Der
schwierigste Teil ist wahrscheinlich die Erzeugung eines sehr
einfachen PDF-Dokuments überhaupt. Das folgende Beispiel sollte
für Sie eine gute Starthilfe sein. Es erzeugt ein Dokument mit
einer Seite. Die Seite enthält den Umriss des Textes "Times-Roman"
in 30-Punkt-Schrift. Der Text ist unterstrichen.
Die pdflib-Distribution enthält ein komplexeres Beispiel, das eine
Reihe von Seiten mit einer Analoguhr erzeugt. Hier ist dieses
Beispiel, das unter Verwendung der ClibPDF-Erweiterung in PHP
konvertiert wurde:
Beispiel 2. pdfclock-Beispiel der pdflib 2.0 Distribution