将 PDF 拆分为多个页面范围并输出

将 PDF 拆分为多个页面范围并输出

我需要将一个 PDF 文件拆分为多个 PDF,但使用特定的页面范围。

慢性PDF命令将拆分多个页面范围,但将它们合并为一个 PDF 文件。

cpdf in.pdf 1-3,90-97,112-end -o out.pdf

我需要一个可以执行与上述命令类似的功能的命令,但将每个页面范围输出到其自己的 PDF。

我已经在 PDFTK 和 CPDF 文档中寻找此问题的解决方案,但没有找到任何帮助。

答案1

您可以cpdf使用简单的 for 循环来完成此操作:

for pages in {1-3,90-97,112-end};do cpdf in.pdf $pages -o out-$pages.pdf;done

答案2

与上面 BeastOfCaerbannog 的回答类似,您也可以使用 Ghostscript 执行此操作。只需记住,如果范围不连续,请用引号括起来!

file=“some_file.pdf"; for pages in {1,2-4,”5,6-8",9,10}; do gs -q -dBATCH -sPageList="${pages}" -sDEVICE=pdfwrite -dCompatabilityLevel=1.4 -dNOPAUSE -sOutputFile="${file%%.pdf}-${pages}.pdf" "${file}";done

相关内容