PHP PDF拆分为页面

时间:2019-11-07 12:36:53

标签: php pdf tcpdf fpdf fpdi

我有pdf文件。需要将它们导入系统并按页面拆分。单独的页面=单独的文件。

我尝试使用FPDF和FPDI:

  $pdf = new FPDI(); //FPDI extends TCPDF
  $pdf->AddPage();
  $pages = $pdf->setSourceFile($sLeadDirPath . $sImageName);
  //for first page...
  $page = $pdf->ImportPage(1);
  $pdf->useTemplate($page, 0, 0);
  $pdf->Output('newTest.pdf', 'F');    

某些文件运行良好,但对于某些文件却出现错误:

  

致命错误:未捕获的异常   'setasign \ Fpdi \ PdfParser \ CrossReference \ CrossReferenceException与   消息“此PDF文档已加密,无法使用   FPDI。'

据我了解,文件是加密的(但是我可以打开它而没有任何问题)。 我该如何解决?

或者也许有其他方法可以在没有FPDI的情况下在PHP中拆分pdf?

谢谢!

1 个答案:

答案 0 :(得分:1)

即使您不需要输入密码来查看文档的内容,也可以对PDF进行加密。当PDF文件没有“文档打开密码”(用户密码)但具有“权限密码”(主密码)时,可能是这种情况。在这种情况下,您无需输入密码就可以打开PDF,但是如果不输入密码,就无法编辑PDF(手动或通过FPDI)。您将必须解密PDF,但是,这未在FPDI中实现:

  

FPDI不支持导入加密的[原文] PDF文档。毕竟   这没有任何意义,因为生成的文档是完全   可以重新加密或不重新加密的新文档。

     

(...)

     

如果需要修改现有文档,该文档已经加密   您可以结帐任何SetaPDF product