腾讯云 PDF 可搜索 OCR
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_7b24470b/pdf-ocr-tencent。
技能介绍
要解决什么问题
扫描件或导出成图片层的 PDF,在系统预览和浏览器里往往只能翻页看图,Ctrl+F 搜不到字、也复制不出正文。若你手头是中文合同、票据或档案扫描版,手工重打或换桌面 OCR 再排版,成本高且格式难对齐。
本技能面向「图片型 PDF → 可搜索 PDF」:保留原页为底图,再叠一层与识别结果对齐的透明文字层,便于检索与复制。
如何工作
流程大致是:用 PyMuPDF(fitz) 把每一页渲染成图,调用腾讯云 GeneralAccurateOCR 拿到文本块与坐标,再把文字写回 PDF。调用侧不依赖腾讯云官方 SDK,而是在脚本里手写 TC3-HMAC-SHA256 签名直调 HTTP API。
实现上有几处容易踩坑的细节:
- 签名时间戳须用
utcfromtimestamp,误用fromtimestamp(tz=UTC)会导致日期差 8 小时,出现 AuthFailure - 坐标来自 OCR 返回的 ItemPolygon(
X/Y/Width/Height等大写字段),写入前要做 Y 轴翻转以匹配页面坐标 - 文字层字体须设为
fontname="china-s"(宋体);默认 Helvetica 中文不可见,表现为搜不到、看不见字
输入为待处理 PDF 路径;输出路径可选,未指定时会在原文件名后加 _可搜索.pdf 后缀。
适用边界与注意点
- 中文印刷体扫描件、合同/文档类材料匹配度最高;英文一般可用;手写体仅作尝试,文档中也建议走专业 OCR
- 腾讯云 GeneralAccurateOCR 有免费额度(文档写明每月约 1000 次);页数多时逐页调 API,大文件(例如 225 页)可能需 15~30 分钟
- 页图会上传至腾讯云处理,涉及隐私与合规时需自行评估;SecretId/SecretKey 建议用环境变量
TENCENTCLOUD_SECRET_ID、TENCENTCLOUD_SECRET_KEY、TENCENTCLOUD_REGION,避免长期硬编码在脚本里
使用场景
- 法务收到对方盖章扫描的合同 PDF,需在版式不变的前提下用 Ctrl+F 检索条款与金额。
- 财务将纸质发票、回单扫描成 PDF 归档,希望同事能复制税号、金额而不用重打。
- 档案岗位批量处理中文扫描件入库,输出底图不变、带透明文字层、可复制正文的可搜索 PDF。
- 内部脚本维护者不想装腾讯云 SDK,却要对图片型 PDF 逐页 OCR 并写回对齐的文字层。
适合人员
- 每周处理多份扫描合同、要用关键词定位违约责任与付款条款的法务或商务支持。
- 负责票据影像归档、需要在 PDF 内复制税号与金额给审计或报销系统的财务或出纳。
- 编写文档处理流水线、倾向手写 TC3 签名直调 API 而非引入官方 SDK 的后端或自动化作者。
- 推进档案数字化、要把中文扫描 PDF 批量变成可检索、可复制电子档的项目档案管理员。