【问题标题】:TCPDF getAliasNbPages - Get total pages of produced fileTCPDF getAliasNbPages - 获取生成文件的总页数
【发布时间】:2014-03-13 19:27:03
【问题描述】:

我正在使用以下 TCPDF 代码通过 writeHTML 函数生成 PDF。我有页码页脚功能,当 pdf 总页数增加时,它会将页码放在每页的底部。我试图在创建所有页面结束时找到一种方法来确定生成的文档有多少总页面,以便我可以将该信息存储到一个变量中并将该数据提交给数据库。

我试过了:

$total = $pdf->getAliasNbPages();

但不起作用,有什么想法吗?

谢谢

// PAGE NUMBERED FOOTER

class MYPDF extends TCPDF {

    // Page footer
    public function Footer() {
        // Position at 15 mm from bottom
        $this->SetY(-15);
        // Set font
    $this->SetFont('Calibri', '', 8);
        // Page number

    $pageNumbers = 'Page '.$this->getAliasNumPage().' of '.$this->getAliasNbPages();

        $this->Cell(0, 10, $pageNumbers, 0, false, 'C', 0, '', 0, false, 'T', 'M');
    }

}


$html = 'html content';

$pdf->writeHTML($html, true, false, true, false, '');

$pdf->Output('file.pdf', 'I');

【问题讨论】:

    标签: php pdf-generation tcpdf


    【解决方案1】:

    $pdf->Cell(0, 10,'{:ptp:}', 0, false, 'C', 0, '', 0, false, 'T', 'M');

    【讨论】:

      【解决方案2】:

      要获取总页数,请在本例中使用 $this->getAliasNbPages() 作为 chown https://tcpdf.org/examples/example_003/

      【讨论】:

      • 这是在页眉或页脚中执行此操作的规范方法。我不知道你为什么投了反对票。看起来问题不是整个代码,因为我没有看到 $pdf = new MYPDF();我喜欢你的答案比选择的答案更好。使用作者留下的所选答案的注释可以在密切注意他的警告后工作,但如果不小心,它将无法正确显示运行总数。为你干杯,至少现在你不是消极的,因为你的方式是更好的方式。
      【解决方案3】:

      改用 getNumPages 函数:

      $total = $pdf->getNumPages();
      

      请注意,这会计算到目前为止使用 Addpage() 函数创建的页面数量。因此,如果您希望在最后一次使用 Addpage() 后声明页面总数

      【讨论】:

        猜你喜欢
        • 2012-04-16
        • 2011-12-17
        • 2012-02-25
        • 2013-02-05
        • 1970-01-01
        • 1970-01-01
        • 2018-12-06
        • 1970-01-01
        • 2013-06-14
        相关资源
        最近更新 更多