PHP MPDF53,背景图像

时间:2012-11-28 13:16:30

标签: php mpdf

此代码从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;
}

1 个答案:

答案 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来影响其余部分,与第一页不同。