当前位置: 首页 > 知识库问答 >
问题:

Php pdf拆分为多页

胡高寒
2023-03-14

我有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处理”

据我所知,这个文件是加密的(但我可以毫无问题地打开它)。我怎样才能解决这个问题?

或者有其他方法可以在PHP中拆分pdf而不使用FPDI?

谢谢

共有1个答案

晋奕
2023-03-14

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

FPDI不支持导入encrytped[sic]PDF文档。毕竟,这毫无意义,因为生成的文档是一个全新的文档,可能需要重新加密,也可能不需要重新加密。

(...)

如果需要修改已加密的现有文档,可以签出任何SetaPDF产品。

 类似资料:
  • 问题内容: 我有一个具有这种结构的表。 我无法弄清楚我将使用哪种SQL查询来获得这样的结果集: 我正在尝试将三列分为三个单独的行。这可能吗? 问题答案: SELECT Y.UserID, Y.UserName, QuestionName = ‘AnswerToQuestion’ + X.Which, Response = CASE X.Which WHEN ‘1’ THEN AnswerToQue

  • 问题内容: 我有桌子: 我想要这样的输出: 问题答案: 如果可以创建一个数字表,其中包含从1到要拆分的最大字段的数字,则可以使用以下解决方案: 请看这里的小提琴。 如果无法创建表,则解决方案可以是: 这里有个小提琴例子。

  • 我有表: 我想要这样的输出:

  • 问题内容: 我已使用从IMDB收集信息并将其传输到MYSQL数据库的应用程序导入了一些数据。 似乎这些字段尚未标准化,并且在1个字段中包含许多值 例如: 有没有办法将这些值分开,然后将它们插入到另一个表中,而不重复呢? 我进行了一些谷歌搜索,发现我应该使用PHP处理此数据。但是我一点都不了解PHP。 无论如何,仅使用MYSQL即可转换此​​数据? 问题答案: 您可以使用存储过程,该过程使用游标来解

  • 问题内容: 我有从mongodb导出的json文件,如下所示: 大约有30000行,我想将每一行拆分成自己的文件。 (我正在尝试将我的数据转移到榻榻米群集上) 我尝试这样做: 但是我发现它似乎减少了行的负载,而当我期望30000个奇数时,运行此命令的输出仅给了我50个奇数文件! 有没有一种逻辑方法可以使此操作不使用任何适合的方法删除任何数据? 问题答案: 假设您不在乎确切的文件名,如果要将输入拆分

  • 问题内容: 将Spring的配置拆分为多个xml文件的正确方法是什么? 此刻我有 /WEB-INF/foo-servlet.xml /WEB-INF/foo-service.xml /WEB-INF/foo-persistence.xml 我有以下内容: 实际问题: 这种方法正确/最佳吗? 我真的需要同时指定中的配置位置 和该板块? 我需要记住什么才能能够引用中定义的?这与 指定有关吗? 更新1: