77 lines
1.7 KiB
Markdown
77 lines
1.7 KiB
Markdown
---
|
||
name: edge-pdf-docs
|
||
description: edge_collector PDF 文档读取、提取、转换和交付检查规范。用于处理客户 PDF、导出报告、部署手册、测试报告、扫描件、表格提取、PDF 转图片预览,以及从 DOCX/Markdown 生成 PDF 交付件。
|
||
---
|
||
|
||
# edge_collector PDF 处理
|
||
|
||
## 适用场景
|
||
|
||
- 阅读客户 PDF 需求、手册、协议资料。
|
||
- 从 PDF 提取文字或表格。
|
||
- 把 Word/Markdown 报告转 PDF。
|
||
- 将 PDF 页面转图片用于视觉检查。
|
||
- 合并、拆分或旋转 PDF。
|
||
|
||
## 文本提取
|
||
|
||
优先使用:
|
||
|
||
```bash
|
||
pdftotext -layout input.pdf output.txt
|
||
```
|
||
|
||
需要表格时使用 `pdfplumber`:
|
||
|
||
```python
|
||
import pdfplumber
|
||
|
||
with pdfplumber.open("input.pdf") as pdf:
|
||
for page in pdf.pages:
|
||
print(page.extract_text())
|
||
print(page.extract_tables())
|
||
```
|
||
|
||
扫描件需要 OCR 时,先说明 OCR 可能有识别误差,并保留人工复核步骤。
|
||
|
||
## PDF 转图片
|
||
|
||
用于检查版式、截图或报告附件:
|
||
|
||
```bash
|
||
pdftoppm -png -r 150 input.pdf page
|
||
```
|
||
|
||
只转指定页:
|
||
|
||
```bash
|
||
pdftoppm -png -r 150 -f 1 -l 3 input.pdf page
|
||
```
|
||
|
||
## 合并与拆分
|
||
|
||
优先使用 `qpdf`:
|
||
|
||
```bash
|
||
qpdf --empty --pages a.pdf b.pdf -- merged.pdf
|
||
qpdf input.pdf --pages . 1-5 -- part.pdf
|
||
```
|
||
|
||
## 交付检查
|
||
|
||
生成 PDF 后检查:
|
||
|
||
- 页面是否缺失。
|
||
- 中文是否乱码。
|
||
- 表格是否截断。
|
||
- 图片是否模糊。
|
||
- 页眉页脚和页码是否正确。
|
||
- 是否包含未脱敏的密钥、账号、密码、内网地址。
|
||
|
||
## 当前项目注意
|
||
|
||
- 用户手册 PDF 不写内部技术细节。
|
||
- 故障报告 PDF 要保留证据截图和验证命令摘要。
|
||
- 部署报告 PDF 要写清目标主机但隐藏敏感凭据。
|
||
- AI 分析报告 PDF 不展示内部 AI Provider 和模型配置。
|