Joplin OCR 如何配置离线语言数据路径,在无网络环境执行文字识别?
【免费下载链接】joplinJoplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.项目地址: https://gitcode.com/GitHub_Trending/jo/joplin
如果你的计算机无法连接互联网,仍希望在 Joplin 桌面版中对手中的图片(PNG、JPEG)和 PDF 附件做文字识别(OCR),需要把 OCR 语言数据文件(.traineddata.gz)提前放到本地目录,并在 Joplin 设置中把 "OCR: Language data URL or path" 指向该目录。完成配置后,Joplin 不再从默认地址https://cdn.jsdelivr.net/npm/@tesseract.js-data/在线拉取语言数据,即可在无网络环境下执行文字识别。该流程适用于 Joplin 桌面应用——文档扫描只在桌面端进行(这是一个资源消耗较大的过程),移动端本身不做扫描,而是通过同步获得 OCR 数据。
准备条件
- 一台可以联网的机器,用于下载语言数据文件;以及一台目标无网络机器,上面装有 Joplin 桌面版。
- 明确要识别的语言。Joplin 会为每种语言加载一个对应的
.traineddata.gz文件,目录里必须有该语言的训练数据文件。 - 确认 OCR 已启用:OCR 默认是开启的;如果没有,可以在设置界面(Configuration screen)的 "General" 部分开启。设置界面的打开方式见 readme/apps/config_screen.md:
- Windows / Linux:菜单Tools > Options,或按
Ctrl+,。 - macOS:菜单Joplin > Preferences,或按
Cmd+,。
- Windows / Linux:菜单Tools > Options,或按
- 了解默认行为:启用 OCR 后,Joplin 默认从
https://cdn.jsdelivr.net/npm/@tesseract.js-data/下载语言文件;首次下载后这些语言数据文件会被缓存。只有默认地址无法访问(例如断网)时,才需要通过下文的路径设置改用本地文件。
在联网机器上获取语言数据文件
Joplin 支持的语言数据文件遵循统一的 URL 规则(来自 readme/apps/ocr.md):
https://cdn.jsdelivr.net/npm/@tesseract.js-data/[language]/4.0.0_best_int/[language].traineddata.gz其中[language]需要替换为受支持的语言代码,文档中列出的例子包括eng、fra、chi_sim、deu、spa。以英语和法语为例:
- 英语:
https://cdn.jsdelivr.net/npm/@tesseract.js-data/eng/4.0.0_best_int/eng.traineddata.gz - 法语:
https://cdn.jsdelivr.net/npm/@tesseract.js-data/fra/4.0.0_best_int/fra.traineddata.gz
按将要 OCR 的语言数量,逐个下载对应的.traineddata.gz文件。
传输文件并放到同一目录
- 将上一步下载的所有
.traineddata.gz文件传输到无网络的计算机(U 盘、内网传输等方式由你自行决定,文档未限定具体方式)。 - 将全部文件移动到同一个目录下,文档给出的 Windows 示例目录为:
C:\Users\User\Documents\joplin-ocr-data\这个目录只是文档示例,你可以使用任何目录,但要求所有语言数据文件都在同一个目录内,后面设置里填的就是这个目录的路径。
在 Joplin 中配置语言数据路径
- 打开设置界面(快捷键或菜单路径见上文"准备条件")。
- 进入 settings > general > advanced。
- 将 "OCR: Language data URL or path" 设置为上一步目录的文件路径(即包含所有
.traineddata.gz文件的那个目录)。 - 点击 "Apply"。
- 启用 OCR(如果尚未启用)。
该设置项既可以是一个 URL,也可以是一个本地路径,它必须指向一个包含每种待用语言.traineddata.gz文件的目录。若机器上有已缓存的旧语言数据需要替换,文档给出的操作是点击 "Clear cache and re-download language data files";注意按钮名称中的 "re-download" 表明该操作会重新下载语言文件,在无网络环境下使用它意味着需要先恢复联网,请按需操作。
验证 OCR 已在离线环境工作
启用后 Joplin 会开始扫描你的图片(PNG 和 JPEG)和 PDF 附件并提取文字数据。文档提醒:如果附件较多,首次全量扫描时 CPU 占用会明显高于平时,属于预期现象,扫描完成后恢复正常;之后新附加的文件会被快速扫描,基本无感知。
确认识别结果有两种方式:
- 搜索命中附件:在搜索框输入查询词时,应用不仅匹配笔记,也匹配附件的 OCR 文字;命中的附件所在笔记顶部会显示一个横幅,标明匹配的附件。桌面和移动端都可以搜索 OCR 文字(移动端的数据来自同步)。
- 查看 OCR 文本:右键点击一个 PDF 链接或图片,选择 "View OCR text",Joplin 会用该附件的 OCR 文本新建一个文本文件并在你的文本编辑器中打开。
如果你能搜索到附件文字、能打开并看到识别出的文本内容,说明本地语言数据已被正确加载,OCR 正在离线工作。
识别能力边界
文档明确了当前 OCR 系统的适用范围,配置离线语言数据不会改变这些限制:
- 对印刷体文字、PDF(尤其是扫描件 PDF)、文字清晰的截图(如屏幕截图)识别可靠。
- 目前不支持手写文字。
- 照片上的文字能否识别取决于清晰度,不保证。
- OCR 系统是可插拔设计(未来可能更换或支持多种 OCR 技术,或对接自建/内网 OCR 服务),但文档说明该插拔接口目前存在于代码中、尚未对外暴露,当前只能通过 "OCR: Language data URL or path" 定制语言数据地址。
更多背景(可访问 PDF 生成、初始扫描开销等)见 readme/apps/ocr.md。
【免费下载链接】joplinJoplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.项目地址: https://gitcode.com/GitHub_Trending/jo/joplin
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考