用途:在工作流程中处理 PDF 文档,包括读取、生成、合并、拆分、表单操作、加水印和格式转换。
主要能力:用 pdfplumber 提取 PDF 的文本、表格和元数据;用 ReportLab 从零生成 PDF;用 PyPDF2 将多个 PDF 合并为一个并添加书签;按页码范围拆分 PDF;以编程方式填写 PDF 表单;为文档添加水印及页眉页脚;在 PDF 与其他格式之间转换。
使用方式:提供 Python 代码示例。读取文本用 pdfplumber.open 遍历页面并调用 extract_text;提取表格用 page.extract_tables 并可写入 CSV;生成文档用 reportlab.platypus 的 SimpleDocTemplate、Paragraph、Table 构建内容后 doc.build;合并用 PdfWriter.append 或循环 add_page;拆分用 PdfWriter 按索引添加页面;水印先用 ReportLab 生成水印 PDF 再 page.merge_page 叠加;元数据用 reader.metadata 读取、writer.add_metadata 写入。
配置:可选环境变量 PDF_TEMPLATE_DIR(默认 ./assets/templates)和 PDF_OUTPUT_DIR(默认 ./output);脚本选项包括 --input、--output、--pages(如 "1-5,8,10-12")、--verbose。
适用场景:生成安全评估报告、提取并分析供应商问卷内容、批量分析 PDF 目录并输出汇总 CSV 等。
限制:扫描版 PDF 的文字提取需要 OCR,默认未包含;多栏或复杂排版可能提取出错;复杂交互式表单可能无法完全支持。资料未提供安装命令、收费方式或价格信息。