类似于这个问题:使用CSS为每个打印页面添加边框?如何在使用wkhtmltopdf渲染的多页pdf的每一页上打印方形边框?
我创建一个 html 页面作为变量,并使用 snappy:https://github.com/KnpLabs/snappy 将其渲染为 pdf。
$html = $this->load->view('print/report_baseline_print',$data,TRUE);
$snappy = new \Knp\Snappy\Pdf('path to wkhtmltopdf -O landscape');
$tmp = random_temp_file('.pdf');
$snappy->generateFromHtml($html,$tmp);
$filename = 'Baseline-report.pdf';
$this->output
->set_header("Cache-Control: no-cache, must-revalidate")
->set_header("Content-Disposition: filename=$filename;")
->set_content_type('application/pdf')
->set_output(read_file($tmp));
delete_file($tmp);
我尝试过一些事情,例如:
....
<style>
section:not(:last-child){
page-break-after: always;
}
.box{
border:1px solid black;
position:fixed;
top:10mm;
right:10mm;
bottom:10mm;
left:10mm;
}
</style>
</head>
<body>
<section id='page1'>
<div class='box'></div>
</section>
<section id='page1'>
<div class='box'></div>
...
但是盒子超出了页面。 那么有什么想法如何让每页以 10 毫米边距打印黑色细边框吗? wkhtmltopdf 程序似乎没有正确处理通常的打印 CSS....
我就快到了。
只需添加/更改
.box{
border:1pt solid black;
position:absolute;
width:28.2cm;
height:19.3cm;
}
section{
position:relative;
}
我的 css 样式在
<style>
标签中
您找到解决这个问题的方法了吗?