我正在使用 FPDF 生成发票,并且在打印多个文档时必须解决一个问题。我正在生成多张(从 2 到 100 多张)发票进行打印,因此我围绕我的 FPDF 代码构建了一个 foreach 循环,将我的所有发票放在一个 PDF 中,这样我就可以点击打印并完成。问题是,FPDF 使用 PageNo() 和 {nb} 在页眉中生成页码和总页数,如果我有 500 页,它列出为 Page: 1 of 500, Page: 2 of 500, Page: 3 of 500...等
我需要找出一种方法来按发票生成页数和当前页。因此,如果第一张发票是 3 页,它会显示第 1 页,共 3 页,第 2 页,共 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();
该模板在标题中包含一个包含页码的标题...
$this->Cell(94,0,'page '.$this->PageNo().'/{nb}' ,0,0,'R');