Wprowadzenie do Zend Framework

     Nauka Zend Framework

    appendix

     Przewodnik po Zend Framework


  • Zend_Gdata
  • Zend_Http
  • Zend_InfoCard
  • Zend_Json
  • Zend_Layout
  • Zend_Ldap
  • Zend_Loader
  • Zend_Locale
  • Zend_Log
  • Zend_Mail
  • Zend_Markup
  • Zend_Measure
  • Zend_Memory
  • Zend_Mime
  • Zend_Navigation
  • Zend_Oauth
  • Zend_OpenId
  • Zend_Paginator
  • Zend_Pdf
  • Zend_ProgressBar
  • Zend_Queue
  • Zend_Reflection
  • Zend_Registry
  • Zend_Rest

  • Zend_Search_Lucene
  • Zend_Serializer
  • Zend_Server
  • Zend_Service
  • Zend_Session
  • Zend_Soap
  • Zend_Tag
  • Zend_Test
  • Zend_Text
  • Zend_TimeSync
  • Zend_Tool
  • Zend_Tool_Framework
  • Zend_Tool_Project
  • Zend_Translate
  • Zend_Uri
  • Zend_Validate
  • Zend_Version
  • Zend_View
  • Zend_Wildfire
  • Zend_XmlRpc
  • ZendX_Console_Process_Unix
  • ZendX_JQuery
  • Translation 21.3% Update 2011-11-16 - Revision 24356 - Version ZF 1.11.x

    52.4. Strony dokumentu.

    52.4.1. Tworzenie strony.

    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ść. [10]. 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 52.4. Zarządzanie stronami dokumentu PDF.

    ...
    // 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]);

    ...

    52.4.2. Klonowanie stron.

    Istniejące strony PDF mogą być klonowane przez tworzenie nowego obiektu Zend_Pdf_Page z istniejącą stroną w parametrze.

    Przykład 52.5. Klonowanie istniejącej strony.

    ...
    // Przechowaj szablon strony w osobnej zmiennej
    $template $pdf->pages[$templatePageIndex];
    ...
    // Dodaj nową stronę
    $page1 = new Zend_Pdf_Page($template);
    $pdf->pages[] = $page1;
    ...

    // Dodaj kolejną stronę
    $page2 = new Zend_Pdf_Page($template);
    $pdf->pages[] = $page2;
    ...

    // Usuń źródłowy szablon strony z dokumentów
    unset($pdf->pages[$templatePageIndex]);

    ...

    Jest to przydatne gdy chcesz utworzyć wiele stron używając jednego szablonu.

    [Uwaga!] Uwaga!

    Ważne! Klonowane strony korzystają z tych samych zasobów co szablon strony, więc mogą być one użyte tylko w tym samym dokumencie co szablon. Zmodyfkowany dokument może być zapisany jako nowy dokument.



    [10] 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.

    digg delicious meneame google twitter technorati facebook

    Comments

    Loading...