MPDF,将包含几页的 PDF 与当前页合并
Posted
技术标签:
【中文标题】MPDF,将包含几页的 PDF 与当前页合并【英文标题】:MPDF, merge a PDF with a few pages, with a current one 【发布时间】:2017-06-11 21:40:18 【问题描述】:我有以下下载 PDF 的代码,我正在尝试从另一个 PDF 添加更多页面,在当前页面之后:
$html = 'THIS IS A ONE PAGE PDF';
include ("PDF/mpdf60/mpdf.php");
$mpdf = new mPDF('c', 'A4-L','','' , 0, 0, 0, 0, 0, 0);
$mpdf->WriteHTML(utf8_encode($html));
$mpdf->AddPage();
$mpdf->SetImportUse();
$file = './best.pdf'; // HERE IS THE SECOND PDF WHICH I WANT TO MERGE WITH THE CURRENT ONE
$pagecount = $mpdf->SetSourceFile($file);
$tplId = $mpdf->ImportPage($pagecount);
$mpdf->UseTemplate($tplId);
ob_end_clean();
$mpdf->Output("title" . date('d-m-Y') . ".pdf",'D');
exit;
我无法找到解决方案。它创建了一个 PDF,其中 best.pdf 的最后一页覆盖了我当前的第一页 pdf。
编辑:
我在$mpdf->SetImportUse();
之前添加了$mpdf->AddPage();
,现在我将第二个pdf 的最后一页放入第一个PDF 的第二页。我现在要做的就是从 best.pdf 中获取所有页面。
【问题讨论】:
那是因为你说是模板,模板是分层的 我用 $mpdf->AddPage(); 修复了它现在我正在尝试从 best.pdf 中获取所有页面。 mpdf.github.io/reference/mpdf-functions/importpage.html 不像他们在那里解释的那样工作。我找到了解决方案。签到。 它清楚地解释了 ImportPage() 的第一个参数是页码 【参考方案1】:我设法做到了:
$html = 'SOME TEXT HERE FOR THE CURRENT PDF';
include ("PDF/mpdf60/mpdf.php");
$mpdf = new mPDF('c', 'A4-L','','' , 0, 0, 0, 0, 0, 0);
$mpdf->WriteHTML(utf8_encode($html));
$mpdf->AddPage();
$mpdf->SetImportUse();
$file = './best.pdf';
$pagecount = $mpdf->SetSourceFile($file);
for ($i=1; $i<=$pagecount; $i++)
$import_page = $mpdf->ImportPage($i);
$mpdf->UseTemplate($import_page);
if ($i < $pagecount)
$mpdf->AddPage();
ob_end_clean();
$mpdf->Output("title" . date('d-m-Y') . ".pdf",'D');
exit;
【讨论】:
以上是关于MPDF,将包含几页的 PDF 与当前页合并的主要内容,如果未能解决你的问题,请参考以下文章