2023-04-17 08:45:39 +08:00
|
|
|
|
[#]: subject: "How to Merge PDF Files in Linux"
|
|
|
|
|
[#]: via: "https://itsfoss.com/merge-pdf-linux/"
|
|
|
|
|
[#]: author: "Sagar Sharma https://itsfoss.com/author/sagar/"
|
|
|
|
|
[#]: collector: "lkxed"
|
|
|
|
|
[#]: translator: "geekpi"
|
2023-04-17 16:00:35 +08:00
|
|
|
|
[#]: reviewer: "wxy"
|
|
|
|
|
[#]: publisher: "wxy"
|
|
|
|
|
[#]: url: "https://linux.cn/article-15730-1.html"
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
如何在 Linux 中合并 PDF 文件
|
|
|
|
|
======
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
![][0]
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
> 有多个关于同一主题的 PDF,现在你想将它们合并成一个 PDF?
|
|
|
|
|
|
|
|
|
|
或者你可能需要上传由不同文件组成的单个文件?许多政府和学术门户网站都要求这样做。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
作为 Linux 用户,如果你遇到需要合并 PDF 的情况,本教程将帮助你。
|
|
|
|
|
|
|
|
|
|
在本教程中,我将分享三种合并多个 PDF 文件的方法:
|
|
|
|
|
|
|
|
|
|
- 使用 PDF Tricks GUI 工具
|
|
|
|
|
- 使用 LibreOffice(允许你选择页面)
|
|
|
|
|
- 使用 ImageMagick 命令行工具(Linux 教程会没有终端方法就结束么?)
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
你可以全部了解一下并选择最适合你的。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
### 方法 1:使用 PDF Tricks GUI 工具在 Linux 中合并 PDF
|
|
|
|
|
|
|
|
|
|
在试用了多种 GUI 工具后,我发现 PDF Tricks 使用简单且易于导航。
|
|
|
|
|
|
|
|
|
|
此外,除了合并 PDF 文件之外,它还包括其他功能,包括:
|
|
|
|
|
|
|
|
|
|
- 压缩 PDF。
|
|
|
|
|
- 拆分 PDF。
|
|
|
|
|
- 将 PDF 转换为 JPG、PNG 和文本格式。
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
它以 [Flatpak][1] 的形式提供。请 [确保你的 Linux 系统启用了 Flatpak 支持][2]。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
我分享的是在 Ubuntu 上启用 Flatpak 的步骤:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
sudo apt install flatpak
|
|
|
|
|
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
现在,使用以下命令在你的系统中安装 PDF Tricks:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
flatpak install flathub com.github.muriloventuroso.pdftricks
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
完成安装后,从系统菜单中打开 PDF Tricks 应用。
|
|
|
|
|
|
|
|
|
|
第一次运行时,你会得到一个可以使用此工具执行的操作列表。显然,要合并 PDF 文件,请使用第三个选项。
|
|
|
|
|
|
|
|
|
|
![merge pdf files using in ubuntu][3]
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
在下一步中,单击 “<ruby>添加文件<rt>Add file</rt></ruby>” 并选择要合并的文件:
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
![choose files to merge][4]
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
选择文件后,单击 “<ruby>合并<rt>Merge</rt></ruby>” 按钮:
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
![click on merge button][5]
|
|
|
|
|
|
|
|
|
|
它将打开系统的默认文件管理器。你可以在此处选择要保存合并文件的位置以及应命名的文件:
|
|
|
|
|
|
|
|
|
|
![locate and name the merged pdf file][6]
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
就是这样。合并后的 PDF 已保存。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
如果你正在寻找,我们提供了一份 [可用于阅读和编辑 PDF 文件的最佳 PDF 阅读器][7] 列表。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
### 方法 2:使用 LibreOffice 合并 PDF 文件
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
很棒的 LibreOffice 能够处理许多与 PDF 相关的任务。你甚至可以 [使用 LibreOffice Draw 工具编辑 PDF 文件][8] 来添加数字签名、添加文本等。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
好处是你不需要安装其他应用。LibreOffice 已经安装在大多数发行版上,如果不是全部的话。
|
|
|
|
|
|
|
|
|
|
打开文件管理器并选择要合并的 PDF 文件。
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
右键单击选定的文件 > <ruby>使用其他应用打开<rt>Open With Other Application</rt></ruby> > LibreOffice Draw,它将打开选定的 PDF 文件。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
它将在单独的 LibreOffice Draw 实例中打开你选择的每个 PDF 文件:
|
|
|
|
|
|
|
|
|
|
![open pdf file in libreoffice][9]
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
现在,你必须从左侧预览栏选择单个页面或整个 PDF 文件(使用 `Ctrl + A`)并将其拖放到要合并的文件的预览栏:
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
拖放后,单击左上角的第 5 个选项,提示是 <ruby>直接导出为 PDF<rt>Export Directly as PDF</rt></ruby>:
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
![export directly as pdf in libreoffice][10]
|
|
|
|
|
|
|
|
|
|
将打开一个文件管理器,你可以从中定位并命名文件:
|
|
|
|
|
|
|
|
|
|
![save merged file from libreoffice][11]
|
|
|
|
|
|
|
|
|
|
这就完成了!
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
### 更多技巧:在命令行中合并 PDF (对于高级用户)
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
如果我不包括命令行方法,那算什么 Linux 教程?要在命令行中合并 PDF 文件,你可以使用 ImageMagick。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
ImageMagick 其实是一个图像相关的工具。PDF 文件本质上是图像,这就是 ImageMagick 可以处理它们的原因。
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
你可能甚至不需要单独 [安装 ImageMagick][12],因为它已经默认安装在大多数发行版中。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
例如,我将添加 3 个名为 pdf-1.pdf、pdf-2.pdf 和 pdf-3.pdf 的 PDF 文件,并将最终合并的 PDF 文件输出命名为 MergedFile.pdf(多么聪明):
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
convert pdf-1.pdf pdf-2.pdf pdf-3.pdf MergedFile.pdf
|
|
|
|
|
```
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
#### “no images defined” 故障排除
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
如果你看到这样的策略错误:
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
![][13]
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
这个问题很容易解决。你只需在 ImageMagick 策略文件中进行少量更改。
|
|
|
|
|
|
|
|
|
|
打开策略文件进行编辑:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
sudo nano /etc/ImageMagick-6/policy.xml
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
并查找以下行:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
<policy domain="coder" rights="none" pattern="PDF" />
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
现在,你需要将 `rights="none"` 更改为 `rights=read|write`:
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
<policy domain="coder" rights="read|write" pattern="PDF" />
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
![change policy in imagemagick to merge pdf files][14]
|
|
|
|
|
|
|
|
|
|
保存更改,现在你可以使用 ImageMagick 轻松合并文件:
|
|
|
|
|
|
|
|
|
|
![merge pdf files using imagemagick in linux terminal][15]
|
|
|
|
|
|
|
|
|
|
### 总结
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
现在你知道了在 Linux 中合并 PDF 文件的几种方法。合并后的 PDF 文件可能很大。如果你需要在有大小限制的门户上传合并的 PDF 文件,你可以 [压缩 PDF 文件][16]。
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
如果你在使用上述方法时遇到任何问题,请告诉我。
|
|
|
|
|
|
2023-04-17 16:00:35 +08:00
|
|
|
|
*(题图:MJ:process docs illustrations in high resolution)*
|
|
|
|
|
|
2023-04-17 08:45:39 +08:00
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
via: https://itsfoss.com/merge-pdf-linux/
|
|
|
|
|
|
|
|
|
|
作者:[Sagar Sharma][a]
|
|
|
|
|
选题:[lkxed][b]
|
|
|
|
|
译者:[geekpi](https://github.com/geekpi)
|
2023-04-17 16:00:35 +08:00
|
|
|
|
校对:[wxy](https://github.com/wxy)
|
2023-04-17 08:45:39 +08:00
|
|
|
|
|
|
|
|
|
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
|
|
|
|
|
|
|
|
|
[a]: https://itsfoss.com/author/sagar/
|
|
|
|
|
[b]: https://github.com/lkxed
|
|
|
|
|
[1]: https://itsfoss.com/what-is-flatpak/
|
|
|
|
|
[2]: https://itsfoss.com/flatpak-guide/
|
2023-04-17 16:00:35 +08:00
|
|
|
|
[3]: https://itsfoss.com/content/images/wordpress/2022/11/merge-pdf-files-using-in-ubuntu-1.png
|
|
|
|
|
[4]: https://itsfoss.com/content/images/wordpress/2022/11/choose-files-to-merge.png
|
|
|
|
|
[5]: https://itsfoss.com/content/images/wordpress/2022/11/click-on-merge-button.png
|
|
|
|
|
[6]: https://itsfoss.com/content/images/wordpress/2022/11/locate-and-name-the-merged-pdf-file.png
|
2023-04-17 08:45:39 +08:00
|
|
|
|
[7]: https://itsfoss.com/pdf-editors-linux/
|
|
|
|
|
[8]: https://itsfoss.com/edit-pdf-files-ubuntu-linux/
|
2023-04-17 16:00:35 +08:00
|
|
|
|
[9]: https://itsfoss.com/content/images/wordpress/2022/11/open-pdf-file-in-libreoffice.png
|
|
|
|
|
[10]: https://itsfoss.com/content/images/wordpress/2022/11/export-directly-as-pdf-in-libreoffice.png
|
|
|
|
|
[11]: https://itsfoss.com/content/images/wordpress/2022/11/save-merged-file-from-libreoffice.png
|
2023-04-17 08:45:39 +08:00
|
|
|
|
[12]: https://itsfoss.com/install-imagemagick-ubuntu/
|
2023-04-17 16:00:35 +08:00
|
|
|
|
[13]: https://itsfoss.com/content/images/wordpress/2022/11/convert-im6.q16-attempt-to-perform-an-operation-not-allowed-by-the-security-policy-pdf-@-error-constitute.c-iscoderauthorized-421.0a.png
|
|
|
|
|
[14]: https://itsfoss.com/content/images/wordpress/2022/11/change-policy-in-imagemagick-to-merge-pdf-files.png
|
|
|
|
|
[15]: https://itsfoss.com/content/images/wordpress/2022/11/merge-pdf-files-using-imagemagick-in-linux-terminal.png
|
2023-04-17 08:45:39 +08:00
|
|
|
|
[16]: https://itsfoss.com/compress-pdf-linux/
|
2023-04-17 16:00:35 +08:00
|
|
|
|
[0]: https://img.linux.net.cn/data/attachment/album/202304/17/155926wvvvh01v1vtcldd0.jpg
|