Perl 如何从PDF文件中提取页面?
是否有任何Perl脚本可以从PDF文件获取页面并将其转换为另一个PDF文件?Perl 如何从PDF文件中提取页面?,perl,pdf,Perl,Pdf,是否有任何Perl脚本可以从PDF文件获取页面并将其转换为另一个PDF文件? 在交互方面,有Acrobat的完整版本。在编程方面,有来自Adobe的解决方案和许多第三方解决方案。谷歌。在OSX上,您可以在预览中通过在缩略图视图中拖动页面来完成此操作。正如gnud已经回答的那样,这是完成此项工作的最佳工具。例如,要将第5-10页从test.pdf提取到out.pdf,您可以编写: pdftk test.pdf cat 5-10 output out.pdf 您要求使用Perl,因此这里有一个很好
在交互方面,有Acrobat的完整版本。在编程方面,有来自Adobe的解决方案和许多第三方解决方案。谷歌。在OSX上,您可以在预览中通过在缩略图视图中拖动页面来完成此操作。正如gnud已经回答的那样,这是完成此项工作的最佳工具。例如,要将第5-10页从test.pdf提取到out.pdf,您可以编写:
pdftk test.pdf cat 5-10 output out.pdf
您要求使用Perl,因此这里有一个很好的解决方案。假设您只想将orig.pdf的第3-6页保存到new.pdf:
deletepdfpage.pl orig.pdf 1-2,7- new.pdf
安德烈亚斯给我的密码对我不起作用。如果在Windows上使用,则此公式适用于我:
pdftk source.pdf cat 123-128 output out.pdf dont_ask
Source显然是源pdf,123-128是要提取的页面间隔。pdf是新的pdf。我相信实际的代码…此代码可能对您有用: 使用CAM::PDF my$file_name=“abc.pdf” my$pdf=CAM::pdf->new($file\u name); my$no_pages=$pdf->numPages() 对于(我的$i=1;$igetPageText($i); 打印“$page\n”; #你能读懂它吗?数组/等等…这里可以做操作
}很抱歉,尽管我是CAM::PDF的作者,但我必须对这个答案投反对票。getPageText()几乎是解决这个问题最糟糕的方法。相反,请尝试CAM::PDF中的extractPages()方法或库中附带的deletepages.pl包装程序。
pdftk source.pdf cat 123-128 output out.pdf dont_ask