2014-06-06 75 views
1

本质上,页眉和页脚仅在第一页和第一页上显示,我手动中断页面后。mPDF不在新页面添加页眉/页脚

但由于HTML内容太长,页眉和页脚不会显示在任何其他页面上,这些页面是自然延续。 (即,其中没有手动)

<htmlpageheader name="header">Page Hader</htmlpageheader> 
<htmlpagefooter name="footer"><p>Copyright <b>blablabla</b> 1999 - <?php echo date('Y') ?></p></htmlpagefooter> 

页眉+页脚将显示当前页

<sethtmlpageheader name="header" page="all" value="on" show-this-page="1" /> 
<sethtmlpagefooter name="footer" page="all" value="on" /> 


<p>(PDF cover)</p> 
<h1>Report</h1> 

页眉+页脚将显示在第一页上,但不能在后续页面

<pagebreak /> 
<sethtmlpageheader name="header" page="all" value="on" show-this-page="1" /> 
<sethtmlpagefooter name="footer" page="all" value="on" /> 
LONG HTML CONTENT 
THAT EXCEEDS PAGE SIZE 
+0

@page没有解决我的问题。所以很多搜索后,我找到了解决问题的办法。我在这里回答你。 –

回答

2

如果您在样式中使用@page,则删除@page可解决问题。那就是我所拥有的,以及对我有用的东西。

+0

如果您使用的是@page,请参阅Giovani Generali的答案,因为对于这种情况它是正确的。 – baldrs

0

我在这里为您提供一个代码片段解决了这个问题是非常有用的。

<?php 

$mpdf = new mPDF(); 

$mpdf->useOddEven = 1; // Use different Odd/Even headers and footers and mirror margins 

// Define the Headers before writing anything so they appear on the first page 

$mpdf->SetHTMLHeader('<div style="text-align: right; font-weight: bold;">My document</div>','O'); 

$mpdf->SetHTMLHeader('<div style="border-bottom: 1px solid #000000;">My document</div>','E'); 

$mpdf->SetHTMLFooter(' 

<table width="100%" style="vertical-align: bottom; font-family: serif; font-size: 8pt; color: #000000; font-weight: bold; font-style: italic;"><tr> 

<td width="33%"><span style="font-weight: bold; font-style: italic;">{DATE j-m-Y}</span></td> 

<td width="33%" align="center" style="font-weight: bold; font-style: italic;">{PAGENO}/{nbpg}</td> 

<td width="33%" style="text-align: right; ">My document</td> 

</tr></table> 

'); // Note that the second parameter is optional : default = 'O' for ODD 

$mpdf->SetHTMLFooter(' 

<table width="100%" style="vertical-align: bottom; font-family: serif; font-size: 8pt; color: #000000; font-weight: bold; font-style: italic;"><tr> 

<td width="33%"><span style="font-weight: bold; font-style: italic;">My document</span></td> 

<td width="33%" align="center" style="font-weight: bold; font-style: italic;">{PAGENO}/{nbpg}</td> 

<td width="33%" style="text-align: right; ">{DATE j-m-Y}</td> 

</tr></table> 

', 'E'); 

$mpdf->WriteHTML('Hallo World'); 

$mpdf->Output(); 

请参阅此链接了解更多信息。 MPDF Headers and Footers