问题描述
Windows中有许多软件可以合并PDF文件,但我们如何在Ubuntu中做同样的事情?
最佳解决方法
如果你想要一个简单的GUI工具,请尝试pdfshuffler。它允许合并PDF以及重新排列和删除页面。对于批处理和/或更复杂的任务,pdftk当然更强大。
次佳解决方法
合并两个pdf文件,file1.pdf
和file2.pdf
:
pdftk file1.pdf file2.pdf cat output mergedfile.pdf
更多信息可用here Way Back Machine。
第三种解决方法
Ghostscript是一个软件包(在Ubuntu中默认可用),使您能够查看或打印PostScript和PDF文件为其他格式,或将这些文件转换为其他格式。要使用Ghostscript组合PDF文件,请输入如下内容:
gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=finished.pdf file1.pdf file2.pdf
以下是该命令的简要说明:
gs starts the Ghostscript program.
-dBATCH once Ghostscript processes the PDF files, it should exit.
If you don't include this option, Ghostscript will just keep running.
-dNOPAUSE forces Ghostscript to process each page without pausing for user interaction.
-q stops Ghostscript from displaying messages while it works
-sDEVICE=pdfwrite
tells Ghostscript to use its built-in PDF writer to process the files.
-sOutputFile=finished.pdf
tells Ghostscript to save the combined PDF file with the specified name.
你的输入文件甚至不需要是PDF文件。您还可以使用PostScript或EPS文件或三者的混合文件。
你可以用Ghostscript做很多事情。你可以阅读它的documentation了解更多细节。
第四种方法
您也可以使用pdfunite合并PDF文档:
pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf
第五种方法
PDFChain是一个非常好的解决方案。它的GUI是PDFTK的前端,您可以在其中合并,拆分甚至为您的PDF文件添加一些背景。
第六种方法
给PDFMod一个尝试,它来自GNOME项目:
https://wiki.gnome.org/Apps/PdfMod
第七种方法
我使用pdfseparate从大pdf文件中提取特定页面:
pdfseparate -f 156 -l 157 input.pdf output_%d.pdf
pdfseparate -f 1 -l 2 input.pdf output_%d.pdf
然后我通过命令将它们全部加入:
pdfunite $(ls -v output_*.pdf | tr '\n' ' ') out$(date +%Y-%m-%d_%H_%M_%S ).pdf
这加入:
output_1.pdf output_2.pdf output_156.pdf output_157.pdf
成:
out2014-12-14_23_25_36.pdf
可能有一个更简单的方法如何应付…… 🙂
第八种方法
您也可以使用jPDFTweak,pdfsam或pdfjam。
(也就是说,我使用pdftk。)
第九种方法
使用pdfsam http://www.pdfsam.org/它非常适合分割和合并pdf
第十种方法
一般来说,您可以使用pdftk合并和修改PDF文档。另外还有一个在线服务可以做到这一点:http://www.pdfmerge.com/