开源 Python PDF 注释库
尝试使用这个免费的开源 Python 库来从 PDF 文档中添加和提取注释。
问:pypdf 是什么?
Pypdf 是一个免费的开源 Python 库,以其在 Python 环境中处理 PDF 文档的多种功能而闻名。此工具确实可用于各种 PDF 操作,但在本篇评论中,我们将重点介绍其注释相关功能。
pypdf 与注释相关的显著特点包括:
- 添加形状注释:我们可以在 PDF 页面的特定区域上绘制线条、矩形、椭圆和多边形等形状作为注释。
- 添加文本注释:我们可以在 PDF 页面的特定位置添加文本注释。
- 添加链接注释:也可以向 PDF 文档添加链接注释(如超链接)。
- 提取注释:我们可以使用 pypdf 库迭代并提取有关 PDF 文档中所有注释的信息。
pypdf 入门
您需要 Python 版本 3.6.0 或更高版本才能安装和使用 pypdf。因此,首先安装 Python,然后使用以下命令通过 pip 和 虚拟环境 在您的机器上安装 pypdf。
Linux
python3 -m venv venv
source venv/bin/activate
pip install pypdf
苹果系统
python -m venv venv
source venv/bin/activate
pip install pypdf
视窗
python3 -m venv venv
venv\Scripts\activate.bat
pip install pypdf
向 PDF 添加矩形注释
我们可以使用 pypdf 库向 PDF 文档添加矩形注释。我们将使用 pypdf 库中的 pypdf.annotations 模块的 Rectangle 类来定义矩形。然后,我们将使用 PDFWriter 类的 add_annotations 方法向 PDF 添加矩形注释。
查看下面的代码片段了解详细信息:
输出
在下面的截图中,您可以看到添加了矩形来注释Open Source单词:
向 PDF 添加文本注释
我们使用 pypdf 库的 pypdf.annotations 模块中的 Text 类创建文本注释。之后,我们可以使用 pypdf 库中的 PDFWriter 类的 add_annotations 方法向 PDF 添加注释。文本注释以图标的形式添加,单击图标时会展开并显示文本。查看以下代码片段了解详细信息:
输出
正如我们在下面的截屏中看到的,上面的代码在 PDF 的指定位置添加了一个图标,单击图标时会显示文本注释:
向 PDF 添加链接注释
链接注释是使用 pypdf.annotations 模块中的 Link 类创建的。但是,链接注释的问题在于它只添加了链接,但不可见。为了解决这个问题,我们将使用 pypdf.annotations 模块中的 Rectangle 类合并一个矩形,如前所述。这样,用户可以直观地识别添加链接注释的位置。查看下面的代码片段以更好地理解:
输出
正如我们在输出中看到的,该矩形作为一个区域,当用户点击时,会将用户重定向到指定的链接。
从 PDF 中提取注释
我们可以使用 pypdf 库从 PDF 中提取注释。我们遍历 PDF 页面上的所有注释,然后使用 get_object 方法获取注释对象。然后我们从对象中提取相关信息。查看以下代码片段了解详细信息:
输出
正如我们在下面的屏幕截图中看到的,程序返回了注释类型和 PDF 文档中注释的坐标:
结论
Pypdf 使 Python 开发人员能够向 PDF 添加不同类型的注释并访问有关注释的基本信息(例如其类型和位置),这使其成为需要添加注释和提取有关注释的数据的任务的实用选择。