首页 > 解决方案 > 如何在 Laravel 中使用 mPDF 从现有 PDF 将每个页面创建为 PDF

问题描述

use ZanySoft\LaravelPDF\PDF;

$mpdf = new PDF();
$mpdf->SetImportUse();

$pagecount = $mpdf->SetSourceFile(storage_path() . '/app/public/applications/test.pdf');

// test.pdf have 2 pages $pagecount have value 2.

for($i=1; $i <= $pagecount ; $i++) {
   $tplId = $mpdf->ImportPage($i);          
   $mpdf->addPage();
   $mpdf->UseTemplate($tplId);
   // store each page as pdf file
   $new_file_name = "new-".$i.".pdf";
   $mpdf->Output($new_file_name, \Mpdf\Output\Destination::FILE);
}

我收到一个错误Class 'Mpdf\Output\Destination' not found。我已经尝试过以下事情作为 Output() 的第二个参数;

  1. $mpdf->输出($new_file_name, \PDF\Output\Destination::FILE);
  2. $mpdf->输出($new_file_name, \Mpdf\Mpdf\Output\Destination::FILE);

但是,它不起作用。请帮助将获取页面存储为 PDF 文件直接存储在目录中。

标签: pdflaravel-5.5mpdf

解决方案


ZanySoft\LaravelPDF\PDF6.1在还没有输出目标类常量的版本中使用 mPDF 。

使用纯字符串:

$mpdf->Output($new_file_name, 'F');

mpdf/mpdf或者直接使用版本中的composer包>=7


推荐阅读