24.4. Strony dokumentu.

Strona dokumentu PDF jest reprezentowana przez klasę Zend_Pdf_Page.

Strony PDF mogą być tworzone lub ładowane z istniejącego dokumentu PDF.

Nowa strona może być dodana przez utworzenie obiektu Zend_Pdf_Page lub wywołanie metody Zend_Pdf::newPage(), która zwraca obiekt Zend_Pdf_Page. Różnicą jest to, że metoda Zend_Pdf::newPage() tworzy stronę dołączoną do dokumentu. W przeciwieństwie to luźnych stron, niepołączonych z żadnym dokumentem, nie może ona być użyta z kilkoma dokumentami PDF, ale ma ona trochę lepszą wydajność. [6]. Do ciebie należy wybor sposobu, którego użyjesz.

Metoda Zend_Pdf::newPage() oraz konstruktor klasy Zend_Pdf_Page przyjmują ten sam zestaw parametrów. W obydwóch jest to rozmiar strony ($x, $y) w punktach (1/72 cala), lub definiowana stała, która jest traktowana jako typ strony:

Strony dokumentu są przechowywane w tablicy $pages będącej publiczną właściwością klasy Zend_Pdf. Jest to tablica obiektów Zend_Pdf_Page. Kompletnie definiuje ona zbiór oraz kolejność stron dokumentu, a także możemy nią manipulować jak zwykłą tablicą:

Przykład 24.4. Zarządzanie stronami dokumentu PDF.

<?php
...
// Odwróć kolejność stron
$pdf->pages = array_reverse($pdf->pages);
...
// Dodaj nową stronę
$pdf->pages[] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
// Dodaj nową stronę
$pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);

// Usuń określoną stronę.
unset($pdf->pages[$id]);

...
?>


[6] Jest to limitacja wersji V1.0 modułu Zend_Pdf. Będzie to wyeliminowane w przyszłych wersjach. Jednak luźne strony zawsze będą dawały lepsze (bardziej optymalne) wyniki przy używaniu stron w kilku dokumentach.