繁体   English   中英

更改或删除TCPDF中的页眉和页脚

[英]Changing or eliminating Header & Footer in TCPDF

tcpdf中的AddPage()自动调用页眉和页脚。 如何消除/覆盖这个?

在调用AddPage()之前使用SetPrintHeader(false)SetPrintFooter(false)方法。 像这样:

$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, 'LETTER', true, 'UTF-8', false);
$pdf->SetPrintHeader(false);
$pdf->SetPrintFooter(false);
$pdf->AddPage();

一个很简单的方法来控制何时显示标题 - 或标题的位 - 是通过扩展TCPDF类并创建自己的标题函数,如下所示:

  class YourPDF extends TCPDF {
        public function Header() {
            if (count($this->pages) === 1) { // Do this only on the first page
                $html .= '<p>Your header here</p>';
            }

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

如果你更喜欢没有标题,你自然也可以使用它来返回任何内容。

以下是一种可以删除页眉和页脚的替代方法:

// Remove the default header and footer
class PDF extends TCPDF { 
    public function Header() { 
    // No Header 
    } 
    public function Footer() { 
    // No Footer 
    } 
} 

$pdf = new PDF();
// set default header data
$pdf->SetHeaderData('', PDF_HEADER_LOGO_WIDTH, 'marks', 'header string');

// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

借助上述功能,您可以更改页眉和页脚。

如何消除/覆盖这个?

此外, TCPDF文档中的示例3显示了如何使用您自己的类覆盖页眉和页脚。

例:
- 第一页,没有页脚
- 第二页,有页脚,从第1页开始

结构体:

    // First page
    $pdf->startPageGroup();
    $pdf->setPrintFooter(false);

    $pdf->addPage();
    // ... add page content here
    $pdf->endPage();

    // Second page
    $pdf->startPageGroup();
    $pdf->setPrintFooter(true);

    $pdf->addPage();
    // ... add page content here
    $pdf->endPage();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM