从外部 PDF 文件导入页面无法正常显示
Import page from external PDF file can't display properly
PDF 文件比正常宽度大。
$pagecount = $mpdf->SetSourceFile($pdfurl);
for($x=0;$x<$pagecount;$x++){
$tplId = $mpdf->ImportPage(($x+1));
$mpdf->UseTemplate($tplId);
$mpdf->AddPage();
}
大部分PDF显示都很好,但宽度较大,只显示了一部分。
您的代码中存在几个问题:
- 您在添加页面之前调用了 UseTemplate()。
- AddPage() 方法以在构造函数中定义的默认页面大小添加页面。
因此您必须将脚本更改为:
$pageCount = $mpdf->SetSourceFile($pdfurl);
for($pageNo = 1; $pageNo <= $pageCount ; $pageNo++){
$tplId = $mpdf->ImportPage($pageNo);
$size = $mpdf->GetTemplateSize($pageNo);
$mpdf->AddPageByArray([
'orientation' => $size['w'] > $size['h'] ? 'L' : 'P',
'newformat' => [$size['w'], $size['h']]
]);
$mpdf->UseTemplate($tplId);
}
谢谢@Jan.Your 代码不能完美地工作 me.But 给我指出正确的方向。
for($pageNo = 1; $pageNo <= $pageCount ; $pageNo++){
$tplId = $mpdf->ImportPage($pageNo);
$size = $mpdf->GetTemplateSize($tplId);
$w=210;
if($size['w'] > $size['h']){
$w=299;
}
$mpdf->AddPageByArray([
'orientation' => $size['w'] > $size['h'] ? 'L' : 'P'
]);
$mpdf->UseTemplate($tplId,0,0,$w);
}
但是我的解决方案有一个 problem.The 横向模式会稍微缩小 PDF 大小。
PDF 文件比正常宽度大。
$pagecount = $mpdf->SetSourceFile($pdfurl);
for($x=0;$x<$pagecount;$x++){
$tplId = $mpdf->ImportPage(($x+1));
$mpdf->UseTemplate($tplId);
$mpdf->AddPage();
}
大部分PDF显示都很好,但宽度较大,只显示了一部分。
您的代码中存在几个问题:
- 您在添加页面之前调用了 UseTemplate()。
- AddPage() 方法以在构造函数中定义的默认页面大小添加页面。
因此您必须将脚本更改为:
$pageCount = $mpdf->SetSourceFile($pdfurl);
for($pageNo = 1; $pageNo <= $pageCount ; $pageNo++){
$tplId = $mpdf->ImportPage($pageNo);
$size = $mpdf->GetTemplateSize($pageNo);
$mpdf->AddPageByArray([
'orientation' => $size['w'] > $size['h'] ? 'L' : 'P',
'newformat' => [$size['w'], $size['h']]
]);
$mpdf->UseTemplate($tplId);
}
谢谢@Jan.Your 代码不能完美地工作 me.But 给我指出正确的方向。
for($pageNo = 1; $pageNo <= $pageCount ; $pageNo++){
$tplId = $mpdf->ImportPage($pageNo);
$size = $mpdf->GetTemplateSize($tplId);
$w=210;
if($size['w'] > $size['h']){
$w=299;
}
$mpdf->AddPageByArray([
'orientation' => $size['w'] > $size['h'] ? 'L' : 'P'
]);
$mpdf->UseTemplate($tplId,0,0,$w);
}
但是我的解决方案有一个 problem.The 横向模式会稍微缩小 PDF 大小。