[GENERIC] Zend_Translate:
[zend.git] / documentation / manual / ja / module_specs / Zend_Pdf-Pages.xml
blob88b60484254bcd7250b6b3e0d437ddbbf1f31526
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Reviewed: no -->
3 <!-- EN-Revision: 20872 -->
4 <sect1 id="zend.pdf.pages">
5     <title>ページの操作</title>
6     <sect2 id="zend.pdf.pages.creation">
7         <title>ページの作成</title>
8         <para>
9             <acronym>PDF</acronym> ドキュメントのページは、<classname>Zend_Pdf</classname> の
10             <classname>Zend_Pdf_Page</classname> クラスで表されます。
11         </para>
13         <para>
14             <acronym>PDF</acronym> ページは既存の <acronym>PDF</acronym> から読み込むこともできますし、
15             新しく作成することもできます。
16         </para>
18         <para>
19             新しいページを取得するには、直接 <classname>Zend_Pdf_Page</classname>
20             オブジェクトを作成するか、<methodname>Zend_Pdf::newPage()</methodname>
21             メソッドをコールします。このメソッドは <classname>Zend_Pdf_Page</classname>
22             オブジェクトを返します。<methodname>Zend_Pdf::newPage()</methodname>
23             の場合は、すでにドキュメントにアタッチされているページを作成するという点が異なります。
24             こうするとそのページを複数の <acronym>PDF</acronym> ドキュメントで使いまわすことができませんが、
25             多少高速になります
26             <footnote>
27                 <para>
28                 これは現在のバージョンの Zend Framework の制限事項であり、
29                 将来のバージョンではなくなる予定です。
30                 しかし、ドキュメント間でページを共有するには、
31                 アタッチされていないページのほうが常によい結果となるでしょう。
32                 </para>
33             </footnote>。どちらの手法を使用するかはあなたしだいです。
34         </para>
36         <para>
37         <methodname>Zend_Pdf::newPage()</methodname> メソッドおよび <classname>Zend_Pdf_Page</classname>
38         のコンストラクタは、どちらも同じ形式のパラメータを受け取ります。
39         ページサイズを ($x, $y) 形式のポイント数 (1/72 インチ)
40         で表したものか、定義済みの定数のうちのいずれかになります。
41         以下の定数が定義されています。
42             <itemizedlist>
43                 <listitem>
44                     <para>Zend_Pdf_Page::SIZE_A4</para>
45                 </listitem>
46                 <listitem>
47                     <para>Zend_Pdf_Page::SIZE_A4_LANDSCAPE</para>
48                 </listitem>
49                 <listitem>
50                     <para>Zend_Pdf_Page::SIZE_LETTER</para>
51                 </listitem>
52                 <listitem>
53                     <para>Zend_Pdf_Page::SIZE_LETTER_LANDSCAPE</para>
54                 </listitem>
55             </itemizedlist>
56         </para>
58         <para>
59             ドキュメントのページは、<classname>Zend_Pdf</classname> クラスの public メンバである
60             <varname>$pages</varname> に保存されます。これは <classname>Zend_Pdf_Page</classname>
61             オブジェクトの配列です。これによってページの並び順も定義され、
62             一般的な配列と同じように操作できます。
63         </para>
65         <example id="zend.pdf.pages.example-1">
66             <title>PDF ドキュメントのページの操作</title>
67             <programlisting language="php"><![CDATA[
68 ...
69 // ページの並び順を反転します
70 $pdf->pages = array_reverse($pdf->pages);
71 ...
72 // 新しいページを追加します
73 $pdf->pages[] = new Zend_Pdf_Page(Zend_Pdf_Page::SIZE_A4);
74 // 新しいページを追加します
75 $pdf->pages[] = $pdf->newPage(Zend_Pdf_Page::SIZE_A4);
77 // 指定したページを削除します
78 unset($pdf->pages[$id]);
80 ...
81 ]]></programlisting>
82         </example>
83     </sect2>
85     <sect2 id="zend.pdf.pages.cloning">
86         <title>ページの複製</title>
87         <para>
88             既存の <acronym>PDF</acronym> ページを複製するには、新しい <classname>Zend_Pdf_Page</classname>
89             オブジェクトを作成する際に既存のページをパラメータとして指定します。
90         </para>
92         <example id="zend.pdf.pages.example-2">
93             <title>既存のページの複製</title>
94             <programlisting language="php"><![CDATA[
95 ...
96 // テンプレートページを別の変数に格納します
97 $template = $pdf->pages[$templatePageIndex];
98 ...
99 // 新しいページを追加します
100 $page1 = new Zend_Pdf_Page($template);
101 $pdf->pages[] = $page1;
104 // 別のページを追加します
105 $page2 = new Zend_Pdf_Page($template);
106 $pdf->pages[] = $page2;
109 // テンプレートページをドキュメントから削除します
110 unset($pdf->pages[$templatePageIndex]);
113 ]]></programlisting>
114         </example>
116         <para>
117             これは、ひとつのテンプレートから複数のページを作成したい場合に便利です。
118         </para>
120         <caution>
121             <para>
122                 注意! 複製されたページは、テンプレートページと同じ
123                 <acronym>PDF</acronym> リソースを共有します。つまり、
124                 テンプレートページと同じドキュメントしか使用できません。
125                 ドキュメントを修正したら、新しいページとして保存できます。
126             </para>
127         </caution>
128     </sect2>
129 </sect1>
130 <!--
131 vim:se ts=4 sw=4 et: