我正在使用FPDF生成发票,我在打印多个文档时不得不解决一个问题。我正在生成多个(任何地方从2到100+)发票用于打印,所以我围绕我的FPDF代码构建了一个foreach循环,将我的所有发票放在一个PDF中,这样我就可以打印并完成。问题是,FPDF使用PageNo()和{nb}生成页码和页眉中的总页数,如果我有500页,则列为页面:1 of 500,Page:2 of 500,Page:3 of 500 ......等等。
我需要找出一种按发票生成页数和当前页面的方法。因此,如果第一张发票是3页,则表示页面:1 of 3,Page:2 of 3等,下一张发票是5页,第1页,共5页,第2页,共5页等...甚至虽然它都在同一个PDF中。
$pdf=new PDF();
foreach ($array_invoices as $invoice_number) {
...FPDF Template Here...
/**
* The following code checks the page length
* If the page is over a certain length it will create a new page.
* If not, it will add the footer.
*/
if($pdf->GetY() < 225)
$pdf->SetY(238);
elseif($pdf->getY() > 240)
$pdf->AddPage();
}
$pdf->Output();
模板的头部有一个include,用于输出页码...
$this->Cell(94,0,'page '.$this->PageNo().'/{nb}' ,0,0,'R');