注文表から定型書簡を作成します。注文ごとに 1 ページまたは 2 ページのいずれかを指定できます。PDF にはすべての注文が含まれています。ここで、すべての注文のページ番号を PDF に入れたいと思います。
1 番目の注文: ページ 1 と 2、2 番目の注文: ページ 3、3 番目の注文: ページ 4。
ページ数は、お客様が注文した記事の数によって異なります (最大 2 ページ)。
PageNo()
文書全体を番号付けに使用します。多分誰かが同じ問題を抱えていましたか?
注文表から定型書簡を作成します。注文ごとに 1 ページまたは 2 ページのいずれかを指定できます。PDF にはすべての注文が含まれています。ここで、すべての注文のページ番号を PDF に入れたいと思います。
1 番目の注文: ページ 1 と 2、2 番目の注文: ページ 3、3 番目の注文: ページ 4。
ページ数は、お客様が注文した記事の数によって異なります (最大 2 ページ)。
PageNo()
文書全体を番号付けに使用します。多分誰かが同じ問題を抱えていましたか?
FPDF のクラスをサブクラス化し、現在の注文の「サブページ番号」を追跡するプロパティをFPDF
追加することで、期待される結果を得ることができます。その後、カスタマイズしたまたはメソッド$orderPageNo
でそのプロパティを使用できます。Header
Footer
例:
<?php
require('fpdf/fpdf.php');
class PDF extends FPDF {
protected $orderNumber, $orderPageNo;
function AcceptPageBreak() {
$accept = parent::AcceptPageBreak();
if ($accept) {
$this->orderPageNo++;
}
return $accept;
}
function Header() {
$this->Cell(50, 30, 'Order #'.$this->orderNumber);
$this->Cell(50, 30, 'Page '.$this->orderPageNo, 0, 1);
}
function Order($orderNumber, $items) {
$this->orderNumber = $orderNumber;
$this->orderPageNo = 1;
$this->AddPage();
for ($i = 1; $i <= $items; $i++) {
$this->Cell(30, 12, 'Item #'.$i, 1, 1);
}
}
}
$pdf = new PDF();
$pdf->SetFont('Arial', '', 12);
$orders = array(1 => 15, 2 => 25, 3 => 35);
foreach ($orders as $orderNumber => $items) {
$pdf->Order($orderNumber, $items);
}
$pdf->Output();