0

PHPでPDFを生成しようとしています。一般的に非常にうまく機能しているmPDFを見つけました。私が抱えている問題の 1 つは、一部のセクションの偶数/奇数ページに個別のヘッダーを設定できるようにする必要があることです。機能が正常に動作しているとは思えません。これが私のコードです:

// load mPDF
// --------------------------------------------------------------------------
include('mpdf.php');
$mpdf = new mPDF();

// generate a lot of content so it spans multiple pages
// --------------------------------------------------------------------------
$i = 0;
$out = '';
while ($i < 300)
{
    $i++;
    $out .= '<p>Lorem Ipsum</p>';
}
// set html header for odd pages, write html and output
// --------------------------------------------------------------------------
$mpdf->SetHTMLHeader('ODD {PAGENO}', 'O');
$mpdf->WriteHTML($out);
$mpdf->Output();

このコードを実行すると、「ODD Page 3」またはそれが表示されているページが...すべてのページに表示されます。奇数ページだけではありません。自然に壊れたページを偶数または奇数の目的で新しいページと見なすのではなく、手動で壊れたページのみを考慮しているようです。AddPage()関数を実行すると、次のグループが偶数ページと見なされます。しかし、それは後で 50 回の自動改ページになる可能性があります。

手動で改ページした後だけでなく、実際の偶数/奇数ページに異なるヘッダーを設定する方法について何か提案はありますか?

4

1 に答える 1

5

あなたの書き忘れ

$mpdf->mirrorMargins = 1;

ここにあなたの実例があります

<?php
include("../mpdf.php");
$mpdf=new mPDF('utf-8','A4'); 
$mpdf->debug = true;
$mpdf->mirrorMargins = 1 ;// Use different Odd/Even headers and footers and mirror margins

// generate a lot of content so it spans multiple pages
// --------------------------------------------------------------------------
$i = 0;
$out = '';
while ($i < 300)
{
    $i++;
    $out .= '<p>Lorem Ipsum</p>';
}
// set html header for odd pages, write html and output
// --------------------------------------------------------------------------
$mpdf->SetHTMLHeader('{PAGENO}/{nb}', 'O',true);
/* Note: SetHTMLHeader() and SetHTMLFooter() without a side(2nd argument) 
       - sets ODD page header/footer only as default..so you can also write just 
$mpdf->SetHTMLHeader('{PAGENO}/{nb}'); */
$mpdf->WriteHTML($out);
$mpdf->Output();
exit;
?>

参照:

setHTMLHeader

于 2011-07-20T21:03:45.197 に答える