electron本地OCR实现

使用tesseract.js - npm (npmjs.com)

官方demo:GitHub - Balearica/tesseract.js-electron: An example to use tesseract.js in electron

目录结构:

javascript 复制代码
// 引入
<script type="module" src="./ocr/tesseract.js"></script>

// 使用
async function ocr() {
    const worker = await Tesseract.createWorker("chi_sim", 1, {
      workerPath: "./ocr/worker.js", langPath: "./lang-data", corePath: "tesseract-core.wasm.js", logger: m => console.log(m), gzip: true,
      workerBlobURL: false
    });
    const ret = await worker.recognize('./images/test.png');
    console.log(ret.data.text);
    alert(ret.data.text);
    await worker.terminate();
  }

需要注意的地方:

1. 三个文件都可以npm install tesseract.js后在node_modules中找到

2. 语言包下载地址: tessdata/4.0.0_best/chi_sim.traineddata.gz at gh-pages · naptha/tessdata · GitHub

3. langPath与corePath的文件位置都是基于workerPath的相对路径

4. workerBlobURL要写false

5. 语言包若未经过解压gzip写true

相关推荐
HIT_Weston20 分钟前
41、【Agent】【OpenCode】本地代理分析(五)
javascript·人工智能·opencode
前端Hardy1 小时前
前端必看!LocalStorage这么用,再也不踩坑(多框架通用,直接复制)
前端·javascript·面试
前端Hardy1 小时前
前端必看!前端路由守卫这么写,再也不担心权限混乱(Vue/React通用)
前端·javascript·面试
竹林8181 小时前
从ethers.js迁移到Viem:我在重构DeFi前端时踩过的那些坑
前端·javascript
前端郭德纲2 小时前
JavaScript Object.freeze() 详解
开发语言·javascript·ecmascript
希望永不加班2 小时前
SpringBoot 静态资源访问(图片/JS/CSS)配置详解
java·javascript·css·spring boot·后端
m0_738120722 小时前
渗透基础知识ctfshow——Web应用安全与防护(第一章)
服务器·前端·javascript·安全·web安全·网络安全
持续前行3 小时前
通过 npm 下载node_modules 某个依赖 ;例如 下载 @rollup/rollup-linux-arm64-gnu
前端·javascript·vue.js
Embrace9243 小时前
React Native + Realm 离线方案处理
javascript·react native·react.js·realm