我有一个包含数百页双语文本的 PDF。由于我需要分别对每种语言使用 OCR,因此我想抓取偶数页和奇数页并使用convert
或制作两个单独的 PDF ghostscript
。我首先要做的语言是在奇数页上。我可以使用什么convert
或ghostscript
命令来获取这些并将它们写入新文件?
答案1
我会这样做pdftk。
pdftk A=all.pdf cat Aodd output odd.pdf
pdftk A=all.pdf cat Aeven output even.pdf
答案2
pdftk不幸的是,它不再是开源的。 (这是一个很长的故事。)
清楚的GS不过引擎可以做到:
gs -sDEVICE=pdfwrite \
-sPageList=odd \
-sOutputFile=odd.pdf \
-dBATCH -dNOPAUSE \
file.pdf
然后用“偶数”替换“奇数”以选择偶数页。
答案3
使用poppler-utils
工具,您可以首先使用以下命令提取单个页面pdfseparate
:
pdfseparate infile.pdf piece-%d.pdf
分成诸如piece-1.pdf
, piece-2.pdf
...原始 pdf 中的piece-n.pdf
总n
页数。
然后,您可以使用pdfunite
(以及支持使用具有范围扩展的增量值的 shell: {<START>..<END>..<INCR>}
)将它们连接起来:
pdfunite piece-{1..n..2}.pdf odd.pdf
pdfunite piece-{2..n..2}.pdf even.pdf
最后,移除碎片:
rm piece-{1..n}.pdf
答案4
你可以使用 Poppler 来做到这一点pdftocairo
:
pdftocairo -pdf -e input.pdf output.pdf
对于奇数页,并且:
pdftocairo -pdf -o input.pdf output.pdf
对于偶数页。
!!请记住,当前(pdftocairo v.0.80.0)存在一个错误: https://gitlab.freedesktop.org/poppler/poppler/issues/873奇数页和偶数页选项混淆了。 ))