如何编辑 PDF?

如何编辑 PDF?

我通常有两个需求:

场景 A。更改单个 PDF 页面。

在这种情况下,我有一个 PDF,但没有用于创建 PDF 的原始源文件。我不想尝试从头开始重新创建文档。我想打开 PDF 并更改一些内容。这种情况的一个很好的例子:我负责策划露营地的大型活动,我有该露营地的 PDF。我想从该文档开始,突出显示一些部分,添加一些标签,删除一些不相关的部分。

或者

场景 B。合并 PDF 或从 PDF 中提取页面

这种情况通常发生是因为我想要一个由最好在不同程序中创建的部分组成的单个 PDF 可交付成果。在这种情况下,我拥有所有文档的源文件,但它们不能很好地协同工作,无法轻松创建单个 PDF 可交付成果。对于其中的一部分,我可能想要使用 Libre Office Writer。对于另一页,我可能想要使用 Gimp。还有一页,我可能会使用 Libre Office Calc。我可以使用 Writer 作为主文档,并将图像或 Calc 对象嵌入其中,但为了获得最终控制,您不能不选择单独的 PDF 文档,然后将其合并。

在 Ubuntu 中编辑 PDF 的最佳工具/流程是什么?

答案1

LibreOffice 绘图

这让我印象深刻:

sudo apt-get install libreoffice
libreoffice my.pdf

只需打开 PDF、编辑并导出为 PDF。

编辑工具出现在窗口底部的工具栏中(我花了一些时间才找到它......)

我目前发现的相关功能集(Ubuntu 13.04,LibreOffice 4.0.2.2):

  • 删除页面:在左侧页面列表中右键点击页面 > 删除页面。另请参阅:如何提取 PDF 的页面范围/一部分?
  • 更改页面顺序:将页面拖放到页面列表上
  • 编辑现有文本字段(编辑文本、格式和位置)。只需使用选择工具单击两次即可进入编辑模式。
  • 添加新的文本字段。选择底部的文本工具(T),选中需要的文本区域,然后书写。
  • 编辑非文本字段对象就像线条或者项目符号。
  • 创建可填写的 PDF 表单(启用表单*工具栏并确保选择“创建 PDF 表单”)

我找不到一种非常方便的突出显示方法,但你可以通过编辑文本属性(如设置颜色为红色和粗体)来解决问题。但我无法更改背景颜色。

如果我错过了好的功能,请编辑并添加它们!

这是我编辑从此 ODT 导出的 PDF 的屏幕截图:https://github.com/cirosantilli/media/blob/f3497274fffcb043b9751c903c9fe715a5b023ce/test.odt6.4.6。

在此处输入图片描述

当然,正如您在上面的屏幕截图中看到的,PDF 没有像原始 ODT 那样包含那么多信息,例如,我一次只能编辑一个段落的一行可见内容,并且后面的段落不会“换回”到正确的大小,因为 PDF 根本不是设计为可编辑的。

注意:我知道它对某些类型的 PDF 不起作用,这已经发生在我身上了。

如果您遇到这种情况,请在他们的错误跟踪器上打开一个最小、超详细且可重现的错误报告https://bugs.documentfoundation.org/以便开发人员可以解决它,并将链接发布为评论。当它发生在我身上时,我很懒惰/缺乏经验,没有这样做 :-)

尽管如此,上次我检查时它仍然是最好的开放解决方案,并且大多数情况下都有效。

答案2

LibreOffice Draw 对我来说不起作用,因为字体完全混乱,从而破坏了文档的格式。

以下是我多年来一直行之有效的三种解决方案。

PDF 整理器

我经常合并 PDF 文档(如场景 B),我发现 PDF-shuffler 简单方便。我还用它从较大的 PDF 文档中提取页面,效果也很好。PDF 整理器GUI 简单且运行一致。

编辑:PDF-shuffler 无人维护,已被其分支 PDF-arranger 取代:

sudo apt install pdfarranger

瘸子

有时对于场景 A,您只想将 PDF 转换为图像,然后处理该图像。如果您不知道矢量图形和图像之间的区别,您可能想转换为图像,而 GIMP 在这方面做得很好。当您使用 GIMP 打开 PDF 时,它会为您提供一些关于如何转换它的选择。注意分辨率选项。选择更高的数字以获得更大的文件大小和更详细的图像。

Inkscape

事实是,在上述情况 A 之后,没有一种超级简单的方法来编辑 PDF 文件。这是因为 PDF 是一种通用格式,在转换为 PDF 时,文档的某些结构会丢失。举一个简单的例子:如果您将一份 3 页的报告转换为 PDF,则您已经破坏了每页文本之间的链接。如果您编辑它的 PDF 版本并删除第一页上的一个段落,则第 2 页和第 3 页的文本不会自动流到第一页。在用于创建它的原始程序中编辑该文档会容易得多。

但无论出于什么原因,您都没有原始文档,因此只能使用 PDF 进行工作。因此,在按照场景 A 编辑 PDF 文档时,请适当设定您的期望。

一旦你设定了相应的期望,你就会发现 Inkscape 是这里大多数工作的最佳工具。它允许你将 PDF 文档的单页导入为 Inkscape 矢量图形。有些东西组合在一起,实际上没有意义,你可能需要更改一些字体(假设你没有安装原始字体),但它确实很巧妙。

Inkscape 有一个学习曲线,但事实上,如果不使用具有学习曲线的程序,您就无法处理 PDF。就我而言,我宁愿花时间学习 Inkscape——一款用于创建矢量图形的出色应用程序,可用于许多不同的场景——而不是尝试弄清楚如何使用专门用于编辑 PDF 的特殊工具。

祝你好运

答案3

我有点迟了,但最近在谷歌上搜索时偶然发现了这个问题。无论如何,我想推荐期刊对于第一种情况。

它应该在软件中心,或者您可以简单地从终端运行以下命令:

sudo apt-get install xournal

除此之外,对于第二种情况,我将赞同大家对 pdfshuffler 和 pdftk 的推荐。

希望这可以帮助!

答案4

我觉得PDF 整理器是一个很小但是相当不错的应用程序。

信息:PDF-Shuffler 是一个小型的 python-gtk 应用程序,它可以帮助用户使用交互式直观的图形界面合并或拆分 pdf 文档以及旋转、裁剪和重新排列页面。它是 python-pyPdf 的前端。

PDF-Shuffler 网站

相关内容