1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- EN-Revision: 17227 -->
4 <sect1 id="zend.pdf.pages">
5 <title>Trabajando con Páginas</title>
6 <sect2 id="zend.pdf.pages.creation">
7 <title>Creación de Páginas</title>
9 Las páginas en un documento
10 <acronym>PDF</acronym>
11 están representadas como
13 <classname>Zend_Pdf_Page</classname>
15 <classname>Zend_Pdf</classname>
21 <acronym>PDF</acronym>
22 o bien son cargadas desde una
23 <acronym>PDF</acronym>
26 <acronym>API</acronym>
27 <classname>Zend_Pdf</classname>
32 Se pueden crear nuevas páginas instanciando directamente al
34 <classname>Zend_Pdf_Page</classname>
36 <methodname>Zend_Pdf::newPage()</methodname>
39 <classname>Zend_Pdf_Page</classname>
41 <methodname>Zend_Pdf::newPage()</methodname>
43 ya está agregada a un documento. Las páginas no agregadas no pueden
44 ser utilizadas con múltiples documentos
45 <acronym>PDF</acronym>
49 <para>Es una limitación de la versión actual de Zend Framework. Será
51 futuras versiones. Pero las páginas no
52 agregadas siempre dan mejor resultado (más
54 compartir páginas entre los documentos.</para>
60 <methodname>Zend_Pdf::newPage()</methodname>
63 <classname>Zend_Pdf_Page</classname>
65 parámetros que especifican el tamaño de la página. Pueden tomar el
66 tamaño de la página ($x, $y) en puntos (1/72 pulgadas) o una
68 representando un tipo de página:
71 <para>Zend_Pdf_Page::SIZE_A4</para>
74 <para><constant>Zend_Pdf_Page::SIZE_A4_LANDSCAPE</constant></para>
77 <para><constant>Zend_Pdf_Page::SIZE_LETTER</constant></para>
80 <para><constant>Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE</constant></para>
86 Las páginas del documento se almacenados en el atributo público
87 <varname>$pages</varname>
89 <classname>Zend_Pdf</classname>
90 . El atributo posee un array de
92 <classname>Zend_Pdf_Page</classname>
93 y define completamente
94 las instancias y el orden de las páginas. Este array puede
95 manipularse como cualquie otro array
96 <acronym>PHP</acronym>
100 <example id="zend.pdf.pages.example-1">
101 <title>Administración de Páginas de un Documento PDF</title>
102 <programlisting language="php"><![CDATA[
104 // Invertir el orden de las páginas.
105 $pdf->pages = array_reverse($pdf->pages);
107 // Agregar una nueva página.
108 $pdf->pages[] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
109 // Agregar una nueva página.
110 $pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
112 // Eliminar la página especificada.
113 unset($pdf->pages[$id]);
120 <sect2 id="zend.pdf.pages.cloning">
121 <title>Clonado de Páginas</title>
124 <acronym>PDF</acronym>
125 existente puede ser clonada creando un nuevo objeto
126 <classname>Zend_Pdf_Page</classname>
127 con una página existente
131 <example id="zend.pdf.pages.example-2">
132 <title>Clonando una Página Existente</title>
133 <programlisting language="php"><![CDATA[
135 // Almacenar la página plantilla en una variable
136 $template = $pdf->pages[$templatePageIndex];
138 // Agregar una nueva página.
139 $page1 = new Zend_Pdf_Page($template);
140 $pdf->pages[] = $page1;
143 // Agregar otra página.
144 $page2 = new Zend_Pdf_Page($template);
145 $pdf->pages[] = $page2;
148 // Eliminar la página fuente de la plantilla de los documentos.
149 unset($pdf->pages[$templatePageIndex]);
155 <para>Es útil si necesita crear varias páginas utilizando una
160 Importante! La página clonada comparte algunos recursos de
161 <acronym>PDF</acronym>
162 con una página plantilla, la que puede ser utilizada sólo en
163 el mismo documento como
164 una página plantilla. El documento
165 modificado pueden guardarse como uno nuevo.