【文章标题】TCPDF打印页眉和页脚
【文章作者】曾健生
【作者邮箱】zengjiansheng1@126.com
【作者QQ】190678908
【作者博客】blog.youkuaiyun.com/newjueqi
想在TCPDF中,每页PDF都打印页页眉和页脚,方法很简单,
$this->setHeaderData( '',0,"test page" ); 设置页眉的打印信息为"test page"
$this->setPrintHeader(true); //设置打印页眉
$this->setPrintFooter(true); //设置打印页脚
$this->AddPage ();
如果想要自定义页眉和页脚,则重写Header()和Footer() 这两个函数即可
注意了,setPrintHeader() 和 setPrintFooter() 的调用必须在AddPage()之前,否则就是下一页的打印设置了。
在项目中遇到一个问题:当页面是横式排版,总是没有页眉信息。当时被这个问题折腾了很久,后来狠下心来debug了一趟PDF的页面的生成过程,终于发现了问题所在,原来在TCPDF中, 当调用AddPage ()时就会打印页眉信息,但我一般指定page orientation是在调用AddPage ()后,把竖式页面的页眉打印到横式页面中,当然出问题!
解决方法很简单:
把
$this->AddPage (); //生成一个新的pdf,注意,调用这个函数就会打印页眉
$this->setPageOrientation('L'); //设置page orientation为横式
合并为
$this->AddPage ("L"); //生成一个新的pdf,设置page orientation为横式
一切搞定^-^