我有一个包含三个页面的单个pdf文件我需要将这个pdf变成三个单独的pdf页面是否有任何命令行工具或脚本来执行此操作。我正在尝试使用pdftk,pdfcrop和GS,但到目前为止还没有任何结果
示例:one.pdf有1页,该页面有3页。我需要将此页面分成3个单独的页面
答案 0 :(得分:2)
据我所知,您有三个并排拼接的pdf页面,构成一个pdf页面,您希望将任何页面分成单个pdf页面
如下:
podofobox (来自 podofoutils )
用法: podofobox [inputfile] [outpufile] [box] [left] [bottom] [width] [height]
Box是媒体作物出血修剪艺术之一给出值* 100作为 整数(避免使用strtod的语言环境头痛)
可能是执行此任务的工具
获取输入pdf的mediabox信息(例如,使用 pdfinfo )。您需要知道输入pdf的大小(宽度和高度)(将三个页面并排拼接成一个)
在我的例子中,我们有一个3页并排的pdf
的宽度和高度为:
pdfinfo input.pdf | grep“页面大小”页面大小:1785 x 841 pts
这是一个3页并排的拼接3张A4尺寸的PDF页面
所以,为了获得构成 input.pdf 的任何单页的宽度,我们需要划分(已知高度= 841点) 1785乘3 = 595
查看我绘制的网格</ p>
此时我们写了这个小小的班轮脚本
for i in `seq 0 59500 119000`; do podofobox input.pdf $i-out.pdf media $i 0 59500 84100; done
解释:该脚本生成三个单页的pdf页面,从0开始,一直到1190点, 0 , 595 , 1190 ,是拼接在一起的任何单页的起点。值乘以100( podofobox 语法所需)
这是一个由3个A4页面并排拼接而成的pdf示例,如果您的页面具有不同的几何图形,则只需要除以3并修改脚本
答案 1 :(得分:1)
ImageMagick是我用于所有CLI图形的内容:
convert foo.pdf foo-%01d.pdf
这会生成三个单独的PDF文件:
foo-0.pdf
foo-1.pdf
foo-2.pdf
答案 2 :(得分:0)
尝试使用pdftk的'burst'选项。
example:
pdftk input.pdf burst
你也可以使用gs
(ghostscript)imagemajick
,graphicsmajick
,我希望cups
也可以这样做。
答案 3 :(得分:0)
您可以将burst选项与pdftk一起使用。从手册页...
突发
将单个输入PDF文档拆分为单个页面。还会创建名为doc_data.txt的报告,该报告与dump_data的输出相同。如果省略输出节,则PDF页面的名称为:pg_%04d.pdf,例如:pg_0001.pdf,pg_0002.pdf等。要自己命名这些页面,请在输出节中提供printf样式的格式字符串。例如,如果您想要名为page_01.pdf,page_02.pdf等的页面,请将输出page_%02d.pdf传递给pdftk。 加密可以通过附加诸如owner_pw之类的输出选项应用于输出,例如: pdftk in.pdf burst owner_pw foopass