使用 php,我必须将其中包含多个页面的单个 pdf 文件拆分为每个文件一页的大量 PDF 文件。我使用 pdftk 并且工作正常,但是为每个页面创建的每个 pdf 都非常大。我的原始PDF是7MB(里面有70页),用pdftk分割创建的每个文件的总和超过70MB。
有人知道是否有为 pdftk 设置小文件输出的属性?
您始终可以指定该compress
选项 - 例如:
pdftk input.pdf burst output output_%02d.pdf compress
请注意,pdftk
只是将 PDF 文件的内容从输入复制到输出中,并不能做太多优化消除臃肿的工作。因此,如果您的输入 PDF 很大/很复杂,那么您的输出 PDF 也会如此。另请注意,文档中嵌入的任何字体最终可能会在每个输出文档中重复,从而占用更多空间。
您可以使用pdftk并尝试
pdftk source.pdf cat 1-100 output try1.pdf
pdftk source.pdf cat 101-end output try2.pdf
拆分 PDF 文件时,有时很难避免每个输出文件中仅包含某些页面所需的信息。
cpdf努力避免这种情况——您可以尝试一下,看看会发生什么。您可能会发现它在您的文件中并不比 pdftk 好,但它应该是。
披露:我是 cpdf 的作者。
有类似的问题。但不适用于 1:1 的问题。无论如何,有人可能会发现它很有用:
参考:cpdf提取和应用书签: http: //www.coherentpdf.com/cpdfmanual/node38.html
cpdf -list-bookmarks original.pdf > booksmarks.txt
cpdf -add-bookmarks booksmarks.txt new.pdf -o result.pdf
我有同样的问题,我已经测试了这些答案中找到的PdfTk
两个程序。cPDF
我的 PDF 文件大小为 5744k。
使用以下PDFTK
命令
我获得了一个 501k 文件。
set pdftk="C:\Program Files (x86)\Tools\PDFtk\bin\pdftk.exe"
%pdftk% "RY18BPSA.UserManual.pdf" CAT 1 9-15 220 output "RY18BPSA.PDFTK.pdf"
使用以下CPDF
命令
set cpdf="C:\Program Files\Tools\cpdf\cpdf.exe"
%cpdf% "RY18BPSA.UserManual.pdf" 1,9-15,220 -o "RY18BPSA.CPDF.pdf"
我得到一个 592k 的文件。
只是为了好玩,我还测试了将所需页面直接打印到Microsoft to PDF
伪打印机,我得到了一个 250k 的文件!
我可以快速看到与其他生成文件的唯一区别是页面格式已更改并被 A4 页面替换,并且只能使用PDF 程序的打印 GUI 作为 Acrobat Reader 或 Foxit Reader 手动完成。
PS:我可以搜索所有生成的拆分文件!