Zend_Pdfで、作成中のページを複製して新しいページを作る方法を誰も書いてないので書いときますね。
(Zend_Framework 1.11版)
<?php /** * PDFのページを末尾にコピーして追加 * * @param Zend_Pdf $pdf 作成中のpdf * @param integer $sourcePage コピー元のページ番号 * @param integer $count コピー数 * @return Zend_Pdf */ protected function copyPage(Zend_Pdf &$pdf, $sourcePage, $count = 1) { $page = $pdf->pages[$sourcePage]; // 内容を書き込み中のページをコピーするには一端レンダリングする必要がある for ($i = 0; $i < $count; $i++) { $pdfString = $pdf->render(); $pdf = Zend_Pdf::parse($pdfString); $pdf->pages[] = $page; } return $pdf; }
なんだか判りませんが、レンダリング済みのページからテンプレートページを取得したり、ページを複製するたびにレンダリング「しなかった」りするとまともにページが作成されません。なんともはや。