OCR It 实测:离线把扫描 PDF 变成 LLM 能读懂的文本

扫描版 PDF、不给复制文本的阅读器,我们都遇到过:自己看得懂,LLM 看不懂。OCR It 是 Firecrawl 团队开源的免费浏览器插件(Chrome/Firefox),框选一次区域,之后每按一次快捷键就能把整本书变成可编辑的纯文本,直接喂给 AI。全程 100% 离线(内置 Tesseract),不发任何网络请求,不需要 API Key,文档不会离开你的机器。

核心思路:框选一次,按键翻页

整个流程只有三个快捷键(Windows/Linux 把 Option 换成 Alt):

Option+Shift+R  框选 / 重选识别区域
Option+Shift+S  识别当前页(OCR 后台排队执行)
Option+Shift+A  自动模式:截图 → 识别 → 翻页,循环到结束

手动档:Option+Shift+R 拖出文字区域,方向键微调、Shift+方向键缩放,Enter 保存。之后每页按一次 Option+Shift+S,截图立即完成、OCR 在后台排队,翻页之间不用等待(工具栏角标会显示还在处理的页数)。

自动档:Option+Shift+A 全自动循环到文档结束,按 Esc 停止。识别完用 Copy allDownload .txt 按顺序导出,每页用 --- page N --- 分隔,直接喂给 LLM。

翻页是怎么搞定的

很多阅读器是 iframe(甚至跨域 iframe、Shadow DOM),CSS 选择器根本够不着。OCR It 的解法是存一个坐标点而不是选择器:在 Pick control 里点一下阅读器的下一页按钮,存下的是点击位置。这个点能扛过 DOM 重渲染(选择器往往会失效),翻页时会递给每一个 frame,真正拥有这个点的 frame 去执行;跨域时父页面通过 postMessage 把偏移量传下去。也可以直接派发键盘事件(默认 ArrowRight)到你的区域所在 frame。长任务开始前先点 Test now 验证翻页——它不截图,直接试一次翻页。

自己编译也不难

git clone https://github.com/thiagotigaz/ocr-it.git
cd ocr-it
npm run build          # 生成 build/chrome 和 build/firefox

Chrome:chrome://extensions 开开发者模式 → 加载已解压的扩展程序 → 选 build/chrome(仓库根目录本身就是合法的扩展,直接加载也行)。Firefox:about:debugging#/runtime/this-firefox → 临时加载附加组件 → build/firefox/manifest.json。仓库把所需文件都提交了,npm install 只在跑测试或重新打包 Tesseract 时需要。

装完记得去 chrome://extensions/shortcuts 确认快捷键——如果被别的插件占用,Chrome 会静默留空。Firefox 没有快捷键编辑入口,需要去 about:addons → 齿轮图标 → 管理扩展快捷键。

安装时不会索取任何网站权限,单次识别走 activeTab;只有开启跨页自动运行或需要在跨域 iframe 里翻页时,才按需申请当前站点权限(插件面板里有 Allow 按钮)。

适用与不适用

  • 适合:版式干净清晰的页面——扫描书、PPT、锁了文本的阅读器。官方说法是单页约 20ms、同质量下比 Docling 快近 300 倍,当参考数字看,建议在自己机器上实测。
  • 注意:标题、页脚、表格、数学公式和正文混排的复杂页面还容易出错。框选时往文字边距里面收一点,别把页码和页眉扫进去。
  • 防呆设计:连续识别到两张相同页面(说明没翻页)、无法翻页、OCR 失败或达到 300 页上限时会自动停止,不会死循环。
  • 校验方便:面板里每页都有缩略图、字符数和 OCR 置信度,区域一漂移一眼就能看出来,不用等扫完八十页才发现;标 DUPLICATE 说明那页没翻过去。

相关资源

发表评论

滚动至顶部