Batch file Ghostscript:仅打印批文件的最后一页
我只想在Windows命令上打印一批.pdf文件的最后一页,并将它们合并 每个.pdf文件的页数各不相同 我可以用它来确定最后一页Batch file Ghostscript:仅打印批文件的最后一页,batch-file,pdf,count,ghostscript,pdftk,Batch File,Pdf,Count,Ghostscript,Pdftk,我只想在Windows命令上打印一批.pdf文件的最后一页,并将它们合并 每个.pdf文件的页数各不相同 我可以用它来确定最后一页 gs -q -c "(file.pdf) (r) file runpdfbegin pdfpagecount =" -f file.pdf 但是如何将它们打印出来并与Ghostscript结合起来呢?你不能简单地说“LastPage”,你需要单独运行每个文件,并在每个文件之间更改FirstPage和LastPage。我没有试过,但类似于: gs -dFirstPa
gs -q -c "(file.pdf) (r) file runpdfbegin pdfpagecount =" -f file.pdf
但是如何将它们打印出来并与Ghostscript结合起来呢?你不能简单地说“LastPage”,你需要单独运行每个文件,并在每个文件之间更改FirstPage和LastPage。我没有试过,但类似于:
gs -dFirstPage=10 -dLastPage=10 file1.pdf -dFirstPage=2 -dLastPage=2 file2.pdf....
可能有用。当然,您需要为每个文件获得正确的FirstPage和LastPage。但这几乎肯定不会在未来的版本中起作用,因为FirstPage和LastPage的操作正在改变。当这项工作完成时,您将需要一种不同的方法
您可以编写一个PostScript程序,打开一组PDF文件中的每个文件,确定每个文件中的最后一页(使用您已有的代码),并在再次执行文件以呈现它之前设置第一页和最后一页。此答案不是使用Ghostscript,而是使用
pdftk
对于手头的任务,这是一个更好的工具示例命令:
pdftk \
A=file1.pdf \
B=file2.pdf \
C=file3.pdf \
cat \
Aend \
Bend \
Cend \
output \
result.pdf
这在运行pdftk
时使用了两个小技巧:
file1.pdf
、file2.pdf
和file3.pdf
end
关键字表示最后一页pdftk
句柄可用于指示页面范围,例如C4-6
(表示file3.pdf
的第4-6页)或Bodd
(表示file2.pdf
的所有奇数页)
通过查看pdftk--help
的输出找到更多选项
通常,对这种特定类型的作业使用pdftk
比使用Ghostscript快得多
如果您需要将Ghostscript用于其其他功能(即每次写入PDF输出时基本上构造一个全新的PDF文件),您仍然可以通过Ghostscript运行result.PDF
。我的猜测是,即使是pdftk
+gs
运行的组合时间也比让gs
单独完成所有工作要低