此代码从html创建pdf。这是一个example。如何在第二页上制作背景图像,如第一页?
$mpdf = new mPDF('utf-8','A4','8','',10,10,22,22,10,20);
$html = '<div id="for_pdf">
<h3>some text</h3>
...
<h3>some text</h3>
</div>';
$stylesheet = file_get_contents('./static/css/print.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->list_indent_first_level = 0;
$mpdf->WriteHTML($html,2);
$mpdf->Output("$doc_name.pdf",'D');
print.css文件的一部分:
#for_pdf{
background-image: url("/static/image/pdf_img/big_logo.gif");
background-repeat: no-repeat;
background-position: center;
}
答案 0 :(得分:4)
我知道这是一个老问题,但解决方法是在CSS中使用@page选择器。
@page {
background: url("/static/image/pdf_img/big_logo.gif") 50% 0 no-repeat;
}
*我把你的CSS变成了速记,但做了同样的事情。
上述代码应添加到您的css文件或html文件中的内部标记中。
@page也应该是css中的第一个调用,否则mPDF会忽略它。
使用@page将对每个页面进行更改,无论您拥有多少页面。你也可以通过“@page:first {}”做一些更酷的东西,它允许你只为第一页放置自定义设置,然后使用常规的@page来影响其余部分,与第一页不同。