TCPDF:Pdf 总是在顶部有一个 hr-line

TCPDF: Pdf has always a hr-line on the top

我用 TCPDF 生成我的 PDF。我总是在顶部有一条水平线,但我从未创建过它。在我的 $renderedView 中是简单的文本。谁能告诉我,这条线是从哪里来的?感谢您的帮助!

$pdf = new \TCPDF();
        $pdf->AddPage();
        $pdf->SetFont('courier', '', 9);
        $pdf->SetAuthor('Me');
        $pdf->writeHTML($renderedView, true, 0, true, 0);
$pdf->Output($filePath, 'F');

我通常使用这种格式来编辑header和页脚,

<?php
require_once('functions/TCPDF/tcpdf.php');
$renderedView="text";
// Extend the TCPDF class to create custom Header and Footer
    class MYPDF extends TCPDF {

    //Page header
    public function Header() {

      $this->SetFont('Gotham Medium', 'C', 50);
      $this->SetTextColor(209,183,49);

      $this->Ln(5);        
      $this->Cell(278, 15, 'custom header', 0, false, 'C', 0, '', 0, false, 'M', 'M');

    }

    // Page footer
    public function Footer() {
        $this->SetY(-15);
       $this->SetFont('helvetica', 'I', 10);
      $this->Cell(278, 15, 'custom footer', 0, false, 'C', 0, '', 0, false, 'M', 'M');

    }
}
$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, false, 'UTF-8', false);


        $pdf->AddPage();
        $pdf->SetFont('courier', '', 9);
        $pdf->SetAuthor('Me');
        $pdf->writeHTML($renderedView, true, 0, true, 0);
        $pdf->Output($filePath, 'F');

By default TCPDF will include header and footer. that is the reason for that horizontal line. however you can customise the header and footer in above code.

例如,

  1. 禁用header,使用下面的代码。

    $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, false, 'UTF-8', true);

  2. 要禁用页脚,请使用以下代码。

    $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);

  3. 要禁用两者,请使用。

    $pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, false, 'UTF-8', false);

如您所见,第一个布尔值表示 header,第二个布尔值表示 pdf 文件中的页脚。

@Jaydeep Mor 的评论是对这个问题的更正确的回答。 不需要扩展 class 但可以通过这些方法调用禁用内部方法执行:

$pdf->setPrintHeader(false);
$pdf->setPrintFooter(false);