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

相关推荐
codingandsleeping10 分钟前
使用orval自动拉取swagger文档并生成ts接口
前端·javascript
白水清风1 小时前
微前端学习记录(qiankun、wujie、micro-app)
前端·javascript·前端工程化
用户22152044278001 小时前
new、原型和原型链浅析
前端·javascript
阿星做前端1 小时前
coze源码解读: space develop 页面
前端·javascript
叫我小窝吧1 小时前
Promise 的使用
前端·javascript
前端康师傅3 小时前
JavaScript 作用域
前端·javascript
云枫晖3 小时前
JS核心知识-事件循环
前端·javascript
eason_fan4 小时前
Git 大小写敏感性问题:一次组件重命名引发的CI构建失败
前端·javascript
前端付豪5 小时前
1、震惊!99% 前端都没搞懂的 JavaScript 类型细节
前端·javascript·面试
朝与暮5 小时前
js符号(Symbol)
前端·javascript