使用php我必须将包含多个页面的单个pdf文件拆分为大量PDF文件,每个文件一页。 我使用pdftk并且工作正常,但是为每个页面创建的每个pdf都非常大。我原来的PDF是7MB(里面有70页),用pdftk分割创建的每个文件的总和超过70MB。
有人知道是否有一个属性要设置为pdftk以便有小文件输出?
谢谢
答案 0 :(得分:23)
您始终可以指定compress
选项 - 例如:
pdftk input.pdf burst output output_%02d.pdf compress
请注意,pdftk
只是将PDF文件的内容从输入复制到输出中,并且不能很好地优化掉膨胀。因此,如果您的输入PDF很大/很复杂,您的输出PDF也将是。另请注意,文档中嵌入的任何字体最终都可能会在每个输出文档中重复出现,占用更多空间。
答案 1 :(得分:12)
您可以使用pdftk并尝试
pdftk source.pdf cat 1-100 output try1.pdf
pdftk source.pdf cat 101-end output try2.pdf
答案 2 :(得分:8)
拆分PDF文件时,有时很难避免每个输出文件中包含的某些页面所需的信息。
cpdf努力避免这种情况 - 您可以尝试一下,看看会发生什么。您可能会发现它并不比文件上的pdftk好,但它应该是。
披露:我是cpdf的作者。
答案 3 :(得分:1)
有类似的问题。但不适用于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
答案 4 :(得分:0)
我有同样的问题,我已经测试了这些答案中找到的两个程序 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 手动完成阅读器或福昕阅读器。
PS:我可以搜索所有生成的分割文件!