phpのdompdfライブラリを使用して、HTMLテンプレートからPDFレポートを生成しています。そのhtmlテンプレートには、セクションの目次があります。 PDFを作成するときは、目次のページ番号を更新する必要があります。誰も私はPHPのdompdfライブラリでこれを達成する方法を知っていますか?dompdfを使用して目次を生成するにはどうすればよいですか?
ありがとうございます。
phpのdompdfライブラリを使用して、HTMLテンプレートからPDFレポートを生成しています。そのhtmlテンプレートには、セクションの目次があります。 PDFを作成するときは、目次のページ番号を更新する必要があります。誰も私はPHPのdompdfライブラリでこれを達成する方法を知っていますか?dompdfを使用して目次を生成するにはどうすればよいですか?
ありがとうございます。
あなたは既にこれを解決している可能性がありますか?私はdompdfを使っていませんが、私はZend_Pdfで同様のことをしました:目次のために空白のページを作ってから、page_number => titleの配列を保って他のすべての後のページを作りました。終わりに、私は戻って、以前に保存された参照を使用してコンテンツページを更新...
は、HTML(H1、H2、H3を含む)から目次を生成する、私は次のようでした:
私はDrupalのでこれを達成し、それは、他のPHPのオープンソースやフレームワーク上で動作します推測しています。 私は、ページ番号を格納し、テンプレート内のスクリプトタグ
$GLOBALS['entity_page'][] = $pdf->get_page_number();
の内側にこのコードを保持しています。 テンプレートは、私は......
$canvas = $dompdf->get_canvas();
$font = Font_Metrics::get_font("helvetica", "normal");
$canvas->page_text(520, 805, "Page {PAGE_NUM}", $font, 9, array(0.4, 0.4, 0.4));
foreach ($GLOBALS['entity_page'] as $key => $val) {
$GLOBALS["entity_val"] = 0;
$GLOBALS["entity_y"] = 110;
$canvas->page_script('if($PAGE_NUM == 3 && $PAGE_NUM < 4){
$font = Font_Metrics::get_font("helvetica", "normal");
$x = 380;
$y = $GLOBALS["entity_y"];
$pdf->text($x, $y, "-------------------------".$GLOBALS["entity_page"][$GLOBALS["entity_val"]]."", $font, 12, array(0, 0, 0, 0.8));
$GLOBALS["entity_y"] = $GLOBALS["entity_y"] + 33;
$GLOBALS["entity_val"] = $GLOBALS["entity_val"] + 1;
}');
}
$ PDF->テキストこの部分は一定の増分でページ番号を追加を追加した輸出のために他のコードの後のモジュール で今 tpl.php拡張子でありますy軸の位置です。他のグローバル変数entity_yとentity_valは、値を格納するために使用されます。