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

相关推荐
changuncle25 分钟前
Angular初学者入门第三课——工厂函数(精品)
前端·javascript·angular.js
日月晨曦1 小时前
JavaScript事件循环:一次浏览器线程的"约会"指南
javascript
s3xysteak1 小时前
我要成为vue高手01:上下文
前端·javascript·vue.js
南篱1 小时前
JavaScript原型链没那么难:一文彻底搞懂
javascript·面试
程序员张31 小时前
Vue3+ElementPlus倒计时示例
javascript·vue.js·前端框架
专注VB编程开发20年1 小时前
c# .net支持 NativeAOT 或 Trimming 的库是什么原理
前端·javascript·c#·.net
hfd19902 小时前
JavaScript 性能优化实战技术文章大纲
开发语言·javascript·性能优化
Hejjon2 小时前
React 封装命令式弹窗
前端·javascript·react.js
yzzzzzzzzzzzzzzzzz11 小时前
JavaScript 操作 DOM
开发语言·javascript·ecmascript
再学一点就睡12 小时前
实现大文件上传全流程详解(补偿版本)
前端·javascript·面试