1 <sect1 id="zend.pdf.pages">
2 <title>Страницы документа<!-- Document pages. --></title>
4 Абстракция страницы документа PDF представлена классом <code>Zend_Pdf_Page</code>.
6 PDF document page abstraction is represented by <code>Zend_Pdf_Page</code> class.
11 Страницы PDF либо загружаются из существующего документа PDF, либо создаются.
13 PDF pages either are loaded from existing PDF, or created.
18 Новая страница может быть получена посредством создания нового объекта
19 <code>Zend_Pdf_Page</code> или вызова метода <code>Zend_Pdf::newPage()</code>,
20 который возвращает объект <code>Zend_Pdf_Page</code>. Их различие в том, что
21 метод <code>Zend_Pdf::newPage()</code> создает страницу, уже прикрепленную
22 к документу. В отличие от неприкрепленой, она не может использоваться
23 с несколькими документами PDF, но имеет несколько лучшую производительность.
25 New page can be obtained by creating new <code>Zend_Pdf_Page</code> object or calling
26 <code>Zend_Pdf::newPage()</code> method, which returns <code>Zend_Pdf_Page</code> object.
27 The difference is that <code>Zend_Pdf::newPage()</code> method creates a page, already attached to
28 the document. In difference from unattached pages it can't be used with several PDF documents,
29 but has a little bit better performance.
33 Имеется ограничение версии V1.0 модуля Zend_Pdf. Она будет устранена в
34 будущих версиях. Но неприкрепленные страницы всегда дают лучший (более
35 оптимальный) результат при совместном использовании в нескольких документах.
37 It's a limitation of V1.0 version of Zend_Pdf module. It will be eliminated in future versions.
38 But unattached pages will always give better (more optimal) result for sharing pages between documents.
42 . Какой подход использовать — решать вам.
44 . It's your choice, which approach should be used.
49 Метод <code>Zend_Pdf::newPage()</code> и конструктор <code>Zend_Pdf_Page</code>
50 принимают одинаковый набор параметров. Это либо размер страницы ($x, $y) в
51 пойнтах (1pt = 1/72 inch), либо предопределенная константа, которая
52 трактуется как тип страницы:
55 <code>Zend_Pdf::newPage()</code> method and <code>Zend_Pdf_Page</code> constructor take the same
56 set of parameters. It either the size of page ($x, $y) in a points (1/72 inch), or predefined constant,
57 which is treated as a page type:
61 <para>Zend_Pdf_Const::PAGESIZE_A4</para>
64 <para>Zend_Pdf_Const::PAGESIZE_A4_LANDSCAPE</para>
67 <para>Zend_Pdf_Const::PAGESIZE_LETTER</para>
70 <para>Zend_Pdf_Const::PAGESIZE_LETTER_LANDSCAPE</para>
76 Страницы документа хранятся в открытом члене <varname>$pages</varname> класса
77 <code>Zend_Pdf</code>. Это массив объектов <code>Zend_Pdf_Page</code>.
78 Он полностью описывает набор и порядок страниц документа и с ним можно
79 работать, как с обычным массивом:
81 Document pages are stored in <varname>$pages</varname> public member of <code>Zend_Pdf</code> class.
82 It's an array of <code>Zend_Pdf_Page</code> objects. It completely defines set and order of document pages
83 and can be manipulated as a common array:
88 <title>Управление страницами документа PDF<!-- PDF document pages management. --></title>
89 <programlisting language="php"><![CDATA[<?php
91 // Изменение порядка страниц на противоположный
92 $pdf->pages = array_reverse($pdf->pages);
94 // Добавление новой страницы
95 $pdf->pages[] = new Zend_Pad_Page(Zend_Pdf_Const::PAGESIZE_A4);
96 // Добавление новой страницы
97 $pdf->pages[] = $pdf->newPage(Zend_Pdf_Const::PAGESIZE_A4);
99 // Удаление определенной страницы
100 unset($pdf->pages[$id]);
103 ?>]]></programlisting>