13.2. Erstellen und Laden von PDF Dokumenten

Die Zend_Pdf Klasse bildet das PDF Dokument selber ab und stellt Funktionalitäten auf Dokumentebene bereit.

Um ein neues Dokument zu stellen, sollte ein neues Zend_Pdf Objekt erstellt werden.

Die Zend_Pdf Klasse stellt zwei statische Methoden zum Laden von bestehenden PDF Dateien bereit. Dies sind die Methoden Zend_Pdf::load() und Zend_Pdf::parse(). Beide geben als Ergebnis ein Zend_Pdf Objekt zurück oder werfen eine Ausnahme, wenn ein Fehler auftritt.

Beispiel 13.1. Erstellen und Laden von PDF Dokumenten

<?php
...
// Erstelle ein neues PDF Dokument
$pdf1 = new Zend_Pdf();

// Lade ein PDF Dokument aus einer Datei.
$pdf2 = Zend_Pdf::load($fileName);

// Lade ein PDF Dokument aus einer Zeichenkette.
$pdf3 = Zend_Pdf::parse($pdfString);
...
?>

Das PDF Datei Format unterstützt die schrittweise Aktualisierung von Dokumenten. Jedes Mal, wenn ein Dokument aktualisiert wird, wird eine neue Revision des Dokuments erstellt. Die Zend_Pdf Komponente unterstützt die Rückgabe einer vorgegebenen Revision des Dokuments.

Die Revision kann den Methoden Zend_Pdf::load() and Zend_Pdf::parse() als zweiter Parameter übergeben oder durch einen Zend_Pdf::rollback() [3] Aufruf angefordert werden.

Beispiel 13.2. Rückgabe einer vorgegebenen Revision eines PDF Dokuments

<?php
...
// Lade die vorherige Revision des PDF Dokuments.
$pdf1 = Zend_Pdf::load($fileName, 1);

// Lade die vorherige Revision des PDF Dokuments.
$pdf2 = Zend_Pdf::parse($pdfString, 1);

// Lade die erste Revision des PDF Dokuments.
$pdf3 = Zend_Pdf::load($fileName);
$revisions = $pdf3->revisions();
$pdf3->rollback($revisions - 1);
...
?>


[3] Die Zend_Pdf::rollback() Methode muss vor einer Änderung eines Dokuments aufgerufen werden. Ansonsten ist das Verhalten nicht definiert.