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:
Zend_Pdf_Page::SIZE_A4
Zend_Pdf_Page::SIZE_A4_LANDSCAPE
Zend_Pdf_Page::SIZE_LETTER
Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE
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.