Onyx

PDFlib

PDFlib 

PDFlib, die Programmbibliothek  

PDFlib ist eine Programm-Bibliothek der PDFlib GmbH zur Generierung von PDF-Dateien. PDFlib steht für diese Sprachen und Entwicklungsumgebungen zur Verfügung: Java, C/C++, PHP, COM (VB, ASP, Delphi etc.), .NET (C#, ASP.NET, VB.NET etc.), Perl, REALbasic, RPG, Cobol, Python, Tcl

PDFlib stellt für die jeweilige Sprachumgebung spezielle Funktionen zur Parametrierung und Gestaltung eines PDF-Dokuments zur Verfügung. Die Funktionen lassen sich aufrufen und nutzen wie normale Built-In Funktionen der entsprechenden Sprache.

Beispiel auf Basis PHP _lib_short.php

<?php  
$p = PDF_new(); // neues PDF Objekt
PDF_set_parameter($p, "license","xxxxx-xxxxx-xxxxx-xxxxx"); // License-Key setzen
PDF_begin_document($p, "", ""); // neues PDF-Dokument öffnen
PDF_set_parameter($p, "topdown", " ");
// x, y startet oben links
PDF_begin_page_ext($p, 842, 595, ""); // Seitengröße setzen (Querformat)
$normalFont = PDF_load_font($p, "Helvetica", "winansi", ""); // Font laden
PDF_setfont($p, $normalFont, 11); // Font setzen
$txt      = "";  
PDF_show_xy($p,$txt, , ); // Einzeltext auf 100,90

$txt      = "

";
 
$optList = "fontsize 11 font " . $normalFont;  
$textFlow = PDF_create_textflow($p, $txt, $optList); // Fließtext in einer Textbox
PDF_fit_textflow($p, $textFlow, , , , , ""); // von 100,100 bis 200,200
PDF_delete_textflow($p, $textFlow); // Speicher freigeben
PDF_rect($p, , , , ); // für 100,200 ein 100*100 Rechteck definieren
PDF_stroke($p); // Rahmen des Rechtecks ausgeben
PDF_end_page_ext($p, ""); // Seite schließen
PDF_end_document($p, ""); // PDF-Dokument schließen
$buf = PDF_get_buffer($p); // Die folgenden Anweisungen
$len = strlen($buf); // geben das generierte Dokument
header("Content-type: application/pdf"); // direkt im Browser aus.
header("Content-Length: $len"); // Eine physische Datei ist nicht
header("Content-Disposition: inline; filename=PDFlib.pdf"); // erforderlich.
echo $buf; // Pufferinhalt an Browser übergeben
PDF_delete($p); // PDF-Objekt löschen
?>  

PDFlib ist rasant  

Die PDFlib Ihre verfügt über eine hervorragende Performance, dies qualifiziert sie besonders zur Server-basierenden Generierung von PDF-Dokumenten 'On the Fly'. Die weite Verbreitung des Gespanns PDFlib, PHP/ASP/JSP und Datenbank im Internet und in Intranets belegt dies.

PDFlib kann mehr  

Adobe fügt dem PDF-Format ständig neue Features hinzu, um es allmählich von einem einfachen Dokumentformat in eine universelle Arbeitsplattform zu überführen.

Wo es für die Praxis sinnvoll erscheint, bemüht sich die PDFlib GmbH fortlaufend um die Integration neuer Features. So ist es z.B. mit der PDFlib möglich, Hyperlinks nicht nur im aktuellen Dokument sondern auch zu fernen URIs zu setzen. Als weitere Highlights wären zu nennen: Bookmarks, Formularfelder und Layer.

PDFlib ist programmiererfreundlich  

XML liegt eine völlig andere Logik zugrunde als strukturierten Programmen. Das macht XML für viele Programmierer sperrig. Kann ein Programmierer mit der PDFlib arbeiten, so bleibt er in seinem Element. Neu lernen muss er lediglich die PDFlib-Funktionen in ihren Wirkungs­weisen und in ihrem Zusammenspiel.

Die PDFlib-Funktionen lassen sich beliebig an passender Stelle in ein Programm einbetten. Darin liegt allerdings auch eine Gefahr. So ist die wünschenswerte Trennung zwischen Datenbestand (Modell), Programm (Steuerung) und Layout (Präsentation) prinzipiell aufgehoben. Hier trotzdem Ordnung zu halten und die Programme übersichtlich und pflegbar zu gestalten, verbleibt in der Verantwortung des Programmierers.

© Onyx Multimedia GmbH, München