| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- <sect1 id="zend.pdf.pages">
- <title>Страницы документа<!-- Document pages. --></title>
- <para>
- Абстракция страницы документа PDF представлена классом <code>Zend_Pdf_Page</code>.
- <!--
- PDF document page abstraction is represented by <code>Zend_Pdf_Page</code> class.
- -->
- </para>
- <para>
- Страницы PDF либо загружаются из существующего документа PDF, либо создаются.
- <!--
- PDF pages either are loaded from existing PDF, or created.
- -->
- </para>
- <para>
- Новая страница может быть получена посредством создания нового объекта
- <code>Zend_Pdf_Page</code> или вызова метода <code>Zend_Pdf::newPage()</code>,
- который возвращает объект <code>Zend_Pdf_Page</code>. Их различие в том, что
- метод <code>Zend_Pdf::newPage()</code> создает страницу, уже прикрепленную
- к документу. В отличие от неприкрепленой, она не может использоваться
- с несколькими документами PDF, но имеет несколько лучшую производительность.
- <!--
- New page can be obtained by creating new <code>Zend_Pdf_Page</code> object or calling
- <code>Zend_Pdf::newPage()</code> method, which returns <code>Zend_Pdf_Page</code> object.
- The difference is that <code>Zend_Pdf::newPage()</code> method creates a page, already attached to
- the document. In difference from unattached pages it can't be used with several PDF documents,
- but has a little bit better performance.
- -->
- <footnote>
- <para>
- Имеется ограничение версии V1.0 модуля Zend_Pdf. Она будет устранена в
- будущих версиях. Но неприкрепленные страницы всегда дают лучший (более
- оптимальный) результат при совместном использовании в нескольких документах.
- <!--
- It's a limitation of V1.0 version of Zend_Pdf module. It will be eliminated in future versions.
- But unattached pages will always give better (more optimal) result for sharing pages between documents.
- -->
- </para>
- </footnote>
- . Какой подход использовать — решать вам.
- <!--
- . It's your choice, which approach should be used.
- -->
- </para>
- <para>
- Метод <code>Zend_Pdf::newPage()</code> и конструктор <code>Zend_Pdf_Page</code>
- принимают одинаковый набор параметров. Это либо размер страницы ($x, $y) в
- пойнтах (1pt = 1/72 inch), либо предопределенная константа, которая
- трактуется как тип страницы:
- <!--
- <code>Zend_Pdf::newPage()</code> method and <code>Zend_Pdf_Page</code> constructor take the same
- set of parameters. It either the size of page ($x, $y) in a points (1/72 inch), or predefined constant,
- which is treated as a page type:
- -->
- <itemizedlist>
- <listitem>
- <para>Zend_Pdf_Const::PAGESIZE_A4</para>
- </listitem>
- <listitem>
- <para>Zend_Pdf_Const::PAGESIZE_A4_LANDSCAPE</para>
- </listitem>
- <listitem>
- <para>Zend_Pdf_Const::PAGESIZE_LETTER</para>
- </listitem>
- <listitem>
- <para>Zend_Pdf_Const::PAGESIZE_LETTER_LANDSCAPE</para>
- </listitem>
- </itemizedlist>
- </para>
- <para>
- Страницы документа хранятся в открытом члене <varname>$pages</varname> класса
- <code>Zend_Pdf</code>. Это массив объектов <code>Zend_Pdf_Page</code>.
- Он полностью описывает набор и порядок страниц документа и с ним можно
- работать, как с обычным массивом:
- <!--
- Document pages are stored in <varname>$pages</varname> public member of <code>Zend_Pdf</code> class.
- It's an array of <code>Zend_Pdf_Page</code> objects. It completely defines set and order of document pages
- and can be manipulated as a common array:
- -->
- </para>
- <example>
- <title>Управление страницами документа PDF<!-- PDF document pages management. --></title>
- <programlisting language="php"><![CDATA[<?php
- ...
- // Изменение порядка страниц на противоположный
- $pdf->pages = array_reverse($pdf->pages);
- ...
- // Добавление новой страницы
- $pdf->pages[] = new Zend_Pad_Page(Zend_Pdf_Const::PAGESIZE_A4);
- // Добавление новой страницы
- $pdf->pages[] = $pdf->newPage(Zend_Pdf_Const::PAGESIZE_A4);
- // Удаление определенной страницы
- unset($pdf->pages[$id]);
- ...
- ?>]]></programlisting>
- </example>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|