我目前正在使用mpdf从html生成我的pdf.到目前为止,使用我当前传入的html,我能够生成包含页眉和页脚的一页pdf.但是,如果有一页以上,则我的页脚会一直到第二页的底部.有没有一种方法可以为每个页面添加页眉和页脚?
我已经尝试过$pdf-> setHTMLHeader了,但是它似乎并没有把我的css文件带进去,并且它留下了x应当放在我的徽标处.我怎样才能做到这一点?我曾尝试在各个地方搜索,但似乎找不到解决方案.
这是我的代码
public function generate_pdf($account_id,$transaction_id,$html){
$document_folder = $_SERVER['DOCUMENT_ROOT']."/".DOCUMENT_FOLDER."/".PAYMENT_RECEIPTS."/".date("Y");
$extension = ".pdf";
if(!is_dir($document_folder)){
mkdir($document_folder, 0777,true);
}
$file_name = md5($transaction_id.$account_id);
$this->load->library('m_pdf');
$pdf = $this->m_pdf->load();
$header = $this->load->view('pdfs/header','',true);
$footer = $this->load->view('pdfs/footer','',true);
$pdf->setHTMLHeader($header);
$pdf->setHTMLFooter($footer);
$pdf->AddPage('', // L - landscape, P - portrait
'', '', '', '',
5, // margin_left
5, // margin right
60, // margin top
30, // margin bottom
0, // margin header
0
); // margin footer
$pdf->WriteHTML(base64_decode($html));
$pdf->Output($document_folder."/".$file_name.$extension, "F");
$result = array(
'file_name'=>$file_name,
'file_location'=>$document_folder."/".$file_name.$extension,
'file_link'=>DOCUMENT_LOCATION."/".DOCUMENT_FOLDER."/".PAYMENT_RECEIPTS."/".date("Y")."/".$file_name.$extension
);
return $result;
exit;
}
另外,有没有办法知道PDF的输出是否成功?当前$pdf->输出仅返回“”
谢谢
解决方法:
mPDF不完全支持Bootstrap样式.一种选择是一些替代方案,例如基于无头铬的wkhtmltopdf.
一位mpdf负责人告诉我,bootstrap不支持mpdf内部的即用型功能,您必须使用一些自定义样式. Github link
希望这将有助于解决您的问题.