鲁梦河Menghe (Horace) Lu
智能体技能库

PDF扫描与文字提取

pdf-ocr-searchable

在 macOS 本地生成可搜索 PDF,并提取 Markdown。

macOS;需另装 OCRmyPDF、AppleOCR、Ghostscript 和 Poppler

文档版本 v1.0.1打包日期 MIT

下载完整 ZIP

安装与配置指南

详情页:https://www.lumenghe.com/skills/pdf-ocr-searchable/
英文指南:https://www.lumenghe.com/en/skills/pdf-ocr-searchable/install.txt
文档版本:1.0.1
来源提交:bed2dc83e0121a37a306860e90d6071b3e0815f9
本站打包日期:2026-10-24
下载:https://www.lumenghe.com/downloads/skills/pdf-ocr-searchable-1.0.1-20261024-bed2dc8.zip
SHA-256:bfc163facd36ad8b1da854f289c79a8c358e7bb1f52b1c0f090b21c2193c2059
固定文件名:pdf-ocr-searchable-1.0.1-20261024-bed2dc8.zip
预期下载地址:https://www.lumenghe.com/downloads/skills/pdf-ocr-searchable-1.0.1-20261024-bed2dc8.zip

本指南用于安装当前完整发布包。网页与包内的 README 保留技能的完整方法和边界;安装行为以读者本次授权、当前宿主和实际系统为准。压缩包内指南不包含压缩包自身的摘要,请以详情页或公开 install.txt 列出的包摘要为准。

安装前

  1. 识别操作系统、当前编码 Agent 和所用宿主;读取本页 README 与依赖条件。仅支持 macOS。检查 Homebrew、uv、OCRmyPDF、ocrmypdf-appleocr、Ghostscript 和 Poppler;OCRmyPDF 与插件必须在同一 Python 环境。ZIP 不包含这些依赖。按 README 的命令安装缺失依赖,检查插件可用性;未处理真实 PDF 时只报告依赖检查结果,不宣称 OCR 全流程已验收。
  2. 以只读方式检查 ~/.agents/skills/pdf-ocr-searchable 以及宿主中的同名入口,包括目录、文件、符号链接及断开的符号链接。存在任何同名内容时,先报告当前版本和本地修改;先备份,再由用户决定合并或替换,不静默覆盖、删除或 reset。不要修改宿主的其他配置、其他技能或已有认证。
  3. 从上方 HTTPS 地址下载完整 ZIP 到临时工作目录。计算 SHA-256 并与当前官网发布信息逐字比较;摘要缺失、仍是模板占位或不匹配时停止,不安装。无需访问作者 GitHub 仓库,也不需要 git clone 或 npx skills add owner/repo。

解压与安装

  1. 解压前检查 ZIP 成员路径:只允许一个 pdf-ocr-searchable/ 根目录,拒绝绝对路径、.. 路径穿越和将内容写出目标目录的链接。完整包应有 pdf-ocr-searchable/SKILL.md、README.md、README.en.md、LICENSE 及原有脚本和参考文件。不要只下载 SKILL.md。
  2. 解压到临时目录并确认文件清单。保留目录结构和可执行权限;尤其不要把 pdf-ocr-searchable/pdf-ocr-searchable/ 两层根目录当成正确安装。确认目标不存在后,将整个 pdf-ocr-searchable/ 文件夹放到 ~/.agents/skills/pdf-ocr-searchable/。现有指令和脚本引用此共享真身路径,不随意改成其他位置。
  3. 按宿主设置发现入口。Codex 的个人技能目录为 ~/.agents/skills;Claude Code 的个人入口为 ~/.claude/skills。仅当 Claude Code 的 ~/.claude/skills/pdf-ocr-searchable 不存在且不是断开链接时,建立指向 ~/.agents/skills/pdf-ocr-searchable 的符号链接;存在时检查并报告,不覆盖。其他宿主按其当前官方文档配置,不能宣称所有 Agent 都自动扫描共享目录。

验证与交付

  1. 检查 SKILL.md 和必要脚本、参考文件可读;有需要的脚本权限正确。通过宿主技能列表、显式点名或新会话确认技能发现。文件已写入、宿主已发现、依赖已就绪、实际任务已通过是不同结论,分别报告。用最小且不改动用户原件的样例验证需要验证的行为。
  2. 报告安装目录、来源版本和提交、下载摘要、宿主发现结果、依赖缺口,以及为已有安装保留的备份位置。不要在报告中输出认证值;需要用户交互登录时交由用户完成。

目录发现依据:

查看给 Agent 的安装提示

将这段提示复制给能够读取网页、管理本地文件的编码 Agent。

在 Mac 上把扫描版 PDF 转为可搜索、可复制的文档,并按需提取为 Markdown。基于 Apple Vision / Live Text,本地离线处理,适合论文、书籍和扫描资料整理。

可作为 Agent Skill 使用,也可直接运行命令行脚本。下载本站完整安装包。文档标示版本为 1.0.1,本站包取自已核对的提交 bed2dc8,不表示已核实对应 GitHub Release。

功能

安装

需要 macOS、Homebrew 和 uv。Live Text 模式依赖系统支持;如不可用,可选择 --mode accurate。下载本站 ZIP 不需要 Node.js 或 skills CLI。

交给 Agent 安装

把本站详情页链接交给支持联网的编码 Agent:

请先读取本页及安装指南,再为当前宿主安装 pdf-ocr-searchable:https://www.lumenghe.com/skills/pdf-ocr-searchable/ 。下载本页指定的完整 ZIP 并校验 SHA-256;检查并保留已有安装及本地修改,完成后报告宿主是否发现技能。

纯文本安装指南列明下载包、共享安装路径、依赖与验证步骤,获取本技能无需访问我的 GitHub 仓库。

手动下载 ZIP

  1. 下载完整 ZIP,先与详情页“包信息”中的 SHA-256 核对,再解压。如果文件保存在 macOS 的“下载”目录,可运行 shasum -a 256 "$HOME/Downloads/pdf-ocr-searchable-1.0.1-20261024-bed2dc8.zip" 查看摘要。
  2. 先解压到临时工作目录。压缩包中只有一个 pdf-ocr-searchable/ 根目录,包含 SKILL.md、配套文件和许可证。将该文件夹放入 ~/.agents/skills/pdf-ocr-searchable/。目标位置已有文件、目录或符号链接时,先检查并备份,再决定如何更新,不直接合并或覆盖。
  3. 按宿主配置发现入口。Codex 从 ~/.agents/skills 读取个人技能;Claude Code 的个人技能入口位于 ~/.claude/skills/,可按下例建立符号链接。其他宿主按其文档配置,共享目录不代表所有宿主都会自动发现。
mkdir -p ~/.claude/skills
if [ ! -e ~/.claude/skills/pdf-ocr-searchable ] && [ ! -L ~/.claude/skills/pdf-ocr-searchable ]; then
  ln -s ~/.agents/skills/pdf-ocr-searchable ~/.claude/skills/pdf-ocr-searchable
else
  printf '%s\n' 'An entry already exists; inspect it before making changes.'
fi

技能真身保留在 ~/.agents/skills/pdf-ocr-searchable/,因为现有技能指令或脚本会引用这一位置。安装后检查 SKILL.md 是否存在,并在宿主技能列表或新会话中确认可用;文件存在本身不代表已经加载。 ZIP 提供技能文件,不包含 OCR 运行环境;请另行安装下列依赖。

安装依赖

OCRmyPDF 与 AppleOCR 插件需安装在同一 Python 环境。以下命令使用 Python 3.12:

uv tool install --python 3.12 ocrmypdf --with ocrmypdf-appleocr
brew install ghostscript poppler

检查插件是否可用:

ocrmypdf --plugin ocrmypdf_appleocr --help 2>&1 | grep -q appleocr && echo OK

快速上手

以下示例以 Skill 安装在 ~/.agents/skills/pdf-ocr-searchable 为例;如安装到其他位置,请相应修改路径。

S=~/.agents/skills/pdf-ocr-searchable/scripts/ocr_pdf.sh

# 检查文件是否需要 OCR
"$S" --check "论文.pdf"

# 生成 论文.ocr.pdf,保留原件
"$S" "论文.pdf"

# 同时输出 论文.md
"$S" --md "论文.pdf"

# 批量处理目录中的 PDF
"$S" ~/Scans/

# 去斜并识别繁体中文
"$S" --preset deskew --lang chi_tra "扫描件.pdf"

已有文字层的 PDF 会按脚本的文字密度判据跳过 OCR;使用 --md 时直接提取 Markdown。已有输出文件比原件新时会复用该产物。需要重新识别或更换处理参数时使用 --force,它会重做已有文字层并重写目标产物。

选择处理方式

预设 适用需求 图像处理
archive(默认) 论文、书籍、档案留存 保留扫描图像,不重新编码
deskew 扫歪或拍歪的页面 栅格化页面并矫正倾斜
compact 优先控制文件体积 尝试优化、重新编码图像,压缩效果取决于原文件
"$S" --preset compact "资料.pdf"

默认输出到原文件所在目录,以 .ocr.pdf 结尾。可用 --outdir 指定输出目录,或用 --suffix 修改后缀:

"$S" --outdir "./output" --suffix ".searchable" "资料.pdf"

语言与识别模式

默认语言为简体中文 chi_sim,可通过 --lang 指定:

语言 参数
简体中文 chi_sim 或 zh-Hans
繁体中文 chi_tra 或 zh-Hant
英文 eng 或 en
日文 jpn 或 ja
韩文 kor 或 ko

不支持 chi_sim+eng 形式的语言叠加。中文模型可识别部分页内英文,英文占比较高时请抽查专有名词和参考文献。

--mode 可选 livetext(默认)、accurate、fast。部分 Live Text 故障会自动回退到 accurate;也可直接指定该模式。fast 的语言支持范围较窄,不适合中文文档。

"$S" --lang eng --mode accurate "paper.pdf"

修复 OCR 调试红框

OCR 后会自动清理受支持的 AppleOCR 调试框。处理已有产物时,直接指定要修复的 PDF:

# 只检测,不修改
"$S" --strip-boxes --dry-run "论文.ocr.pdf"

# 修复该文件
"$S" --strip-boxes "论文.ocr.pdf"

# 批量修复目录中的 *.ocr.pdf
"$S" --strip-boxes ~/Scans/

修复支持普通表单和未签名的签名域,不改写加密或已签名文件。清理失败会报告错误,并停止该文件后续 Markdown 生成。适用格式与排查方法见红框兼容性说明。

使用提示

全部参数可运行 "$S" --help 查看。

项目文件

SKILL.md                    # Agent 技能入口
scripts/ocr_pdf.sh          # PDF OCR 与批量处理入口
scripts/pdf_to_md.py        # PDF 文字层转 Markdown
scripts/strip_ocr_boxes.py  # AppleOCR 调试红框修复
references/red-boxes.md     # 修复边界与排查
tests/test_red_boxes.py     # 修复功能回归测试

致谢

许可

MIT

安装包信息与来源
文档版本
v1.0.1
打包日期
2026-10-24
压缩包大小
34.8 KB
文件数
12
来源提交
bed2dc83e0121a37a306860e90d6071b3e0815f9
SHA-256
bfc163facd36ad8b1da854f289c79a8c358e7bb1f52b1c0f090b21c2193c2059

本安装包基于已核对的本地源码快照制作,分发与安装说明已适配本站。

README 标示版本为 1.0.1,对应的 GitHub Release 尚未核实。

GitHub 源码仓库暂不可用