SuperAPI AI 工具集

pdf

办公与效率

查看项目

更新于 10-16 06:00

技能介绍

用途

本技能是一份 PDF 处理指南,帮助 Claude 使用 Python 库和命令行工具完成常见的 PDF 操作。它覆盖从读取、解析到创建、修改 PDF 的多种任务,适合在需要自动化处理 PDF 文档时参考。

主要能力

指南涉及以下操作:

  • 读取 PDF 并获取页数、元数据(标题、作者、主题、创建者)。
  • 提取文本,包括保留布局的文本提取。
  • 提取表格,并可将多个表格合并后导出为 Excel。
  • 创建新 PDF,支持单页和多页文档,可添加文本、线条、段落和分页。
  • 合并多个 PDF 文件。
  • 拆分 PDF,将每一页输出为单独文件。
  • 旋转页面。
  • 添加水印。
  • 提取 PDF 中的图片。
  • 为 PDF 添加密码保护,或移除已有密码。
  • 对扫描版 PDF 进行 OCR 识别(需先转换为图片)。
  • 填写 PDF 表单(指南提示参见 forms.md)。

使用方式

指南以代码示例和命令示例的形式给出具体操作方式。

Python 库方面:

  • pypdf:用于基础操作,如读取、合并、拆分、旋转、提取元数据、添加水印和密码保护。
  • pdfplumber:用于提取文本和表格,支持按页遍历和表格导出。
  • reportlab:用于创建 PDF,提供 Canvas 和 Platypus 两种方式。
  • pytesseract 与 pdf2image:用于扫描件 OCR,需先安装依赖。

命令行工具方面:

  • pdftotext(poppler-utils):提取文本,支持保留布局和指定页码范围。
  • qpdf:合并、拆分、旋转页面、移除密码。
  • pdftk:合并、拆分、旋转(如环境可用)。
  • pdfimages(poppler-utils):提取图片。

指南还提供了一张快速参考表,列出常见任务对应的推荐工具和命令/代码。

适用场景

  • 需要从 PDF 中批量提取文本或表格数据。
  • 需要将多个 PDF 合并为一个,或将一个 PDF 拆分为多页文件。
  • 需要程序化生成 PDF 报告或文档。
  • 需要处理扫描版 PDF 并进行 OCR。
  • 需要为 PDF 添加水印、密码保护或移除密码。
  • 需要提取 PDF 中的图片。

限制

  • 指南中提到的部分工具(如 pdftk)标注为“if available”,即并非所有环境都可用。
  • OCR 功能需要额外安装 pytesseract 和 pdf2image,并依赖外部 OCR 引擎。
  • 填写 PDF 表单的具体步骤未在本指南中展开,需参考 forms.md。
  • 高级功能(如 pypdfium2、JavaScript 库 pdf-lib)和详细示例需参考 reference.md。
  • 本指南未说明各工具的性能、兼容性或平台限制。