如何合并多个PDF文件?

Windows中有很多软件可以合并PDF文件但是我们怎样才能在Ubuntu中做同样的事情呢?

PDF混洗 安装PDF-Shuffler

如果您想要一个具有简单GUI的工具,请尝试使用pdfshuffler 。 它允许合并PDF以及重新排列和删除页面。 对于批处理和/或更复杂的任务,pdftk当然更强大。

PDF-Shuffler的屏幕截图

PDFTK 安装pdftk

要合并两个pdf文件, file1.pdffile2.pdf

 pdftk file1.pdf file2.pdf cat output mergedfile.pdf 

这里有更多信息Way Back Machine

Ghostscript是一个包(默认情况下在Ubuntu中可用),使您可以查看或打印PostScript和PDF文件到其他格式,或将这些文件转换为其他格式。
要使用Ghostscript组合PDF文件,请键入以下内容:

 gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -dAutoRotatePages=/None -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. -dAutoRotatePages=/None Acrobat Distiller parameter AutoRotatePages controls the automatic orientation selection algorithm: For instance: -dAutoRotatePages=/None or /All or /PageByPage. 

您的输入文件甚至不需要是PDF文件。 您还可以使用PostScript或EPS文件,或三者的任意混合。

你可以用Ghostscript做很多事情。 您可以阅读其文档以获取更多详细信息。

资源

您还可以使用pdfunite合并pdf文档:

 pdfunite in-1.pdf in-2.pdf in-n.pdf out.pdf 

PDF链 安装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。)

您可以使用pdftk来合并和修改PDF文档。 或者,有一个在线服务可以做到这一点: http : //www.pdfmerge.com/

另一种方法是使用Latex,如本文所述(假设你安装了pdflatex没有root访问权限 ): https : //tex.stackexchange.com/questions/8662/merge-two-pdf-files-output-by- 胶乳

如果您没有提到的工具或root权限,这很有用,但您确实有pdflatex。

我复制下面的tex代码来合并file1.pdffile2.pdf 。 创建一个名为output.tex的文件并放入:

 \documentclass{article} \usepackage{pdfpages} \begin{document} \includepdf[pages=-]{file1} \includepdf[pages=-]{file2} \end{document} 

要编译,只需使用: pdflatex output.tex

合并的文件将命名为output.pdf

这是我的方法:

  • 我希望它易于访问,因此我在Nautilus中创建了一个右键单击快捷方式(请参阅https://help.ubuntu.com/community/NautilusScriptsHowto )
  • 我希望它非常快,所以我使用了pdfunite
  • pdfunite只接受命令中间的文件路径,所以我不得不挠头来管理文件路径中的空格。 所以我假设所有文件路径都以“/ home /”开头,以“.pdf”结尾

结果如下:

 #!/bin/sh CLEANED_FILE_PATHS=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed 's,.pdf /home/,.pdf\\n/home/,g') echo $CLEANED_FILE_PATHS | bash -c 'IFS=$'"'"'\n'"'"' read -d "" -ra x;pdfunite "${x[@]}" merged.pdf' 

Juste粘贴此脚本

/home/your_username/.local/share/nautilus/scripts

并将其命名为“merge_pdfs.sh”(例如)。 然后使其可执行(右键单击merge_pdfs.sh – >权限选项卡 – >勾选“允许将文件作为程序执行”

所以现在合并pdf文件,你只需要选择它们 – >右击 – >脚本 – > merge_pdfs.sh它将在同一目录中创建一个“merged.pdf”文件

希望能帮助到你!