有没有一种方法来隐藏在PHP与FPDF创建PDF文件的页眉和页脚?(Is there a way t

2019-09-21 04:25发布

我已创建了在PHP FPDF PDF文件。 当我插入页眉和页脚的话,他们会自动被显示在PDF文件中的所有页面。 但我想从越来越显示在第一页上停止这些页眉和页脚,并显示他们的PDF文件的第二页开始。 我已经搜查了网,但无法找到一个解决方案。

换句话说,我要为我有FPDF创建PDF报表动态创建一个封面。

任何人都可以给我如何从第一页的PDF文件执行hidinh页眉和页脚的这个任务的一些技巧!

任何帮助将不胜感激!

Answer 1:

这是一个简单的任务。 尝试以下方法:

class PDF extends FPDF {
    ...

    function Header() {
        if ( $this->PageNo() !== 1 ) {
            // Add your stuff here
        }
    }

    function Footer() {
        if ( $this->PageNo() !== 1 ) {
            // Add your stuff here
        }
    }
}


Answer 2:

问题是页脚在Close()方法,在线路288是从输出在行987是什么意思你有效地将页脚关闭,然后只是反正显示它称为()创建的。 如果我所需要的灵活性,我会做的是一样的东西:

class PDF extends FPDF {
    function Header() {
        if (!isset($this->header[$this->page]) || !$this->header[$this->page]) {
            // ...
        }
    }

    function Footer() {
        if (!isset($this->footer[$this->page]) || !$this->footer[$this->page]) {
            // ...
        }
    }
}

然后使用它像:

$pdf->header[1] = false;
$pdf->footer[1] = false;
$pdf->AddPage();

$pdf->header[2] = true;
$pdf->footer[2] = true;
$pdf->AddPage();

这可能是不是最完美的解决方案,但它的工作原理,它有效地允许你动态修改页脚的可见性(PS:不指定国家也将离开你头就有效降低了代码,你需要的量)



Answer 3:

我想补充的人来这里不希望跳过第一个答案,但最后一个(或任何)页面。 尤其是方便,如果你有动态变化的文字和无法预见的页码。 这可以通过设置一个布尔值,同时增加了页面的PDF来完成。

定义你的页眉/页脚

class PDF extends FPDF {
    function Header() {
        if (!$this->skipHeader) {
            // ...
        }
    }

    function Footer() {
        if (!$this->skipFooter) {
            // ...
        }
    }
}

然后,初始化PDF时,请务必将这些布尔变量设置为false,那么你会得到页眉/页脚一般。

$pdf = new PDF();
$pdf->skipHeader = false;
$pdf->skipFooter = false;

一旦你真的想跳过页眉或页脚,设置相应的布尔为真

$pdf->AddPage();
$pdf->skipHeader = true;
$pdf->AddPageContents();

请记住,设置回假,如果你想在下页页眉/页脚!



文章来源: Is there a way to hide header and footer in a pdf file created with FPDF in PHP?
标签: php pdf fpdf