我从https://github.com/naptha/tesseract.js下载了https://github.com/naptha/tesseract.js库,示例代码basic.html对我不起作用--我在控制台上看到了这个错误:
Uncaught : Tesseract.TesseractWorker不是构造函数
我更改了添加,以修复由于某种原因出现的“未找到的文件”错误:
<script src='https://cdn.rawgit.com/naptha/tesseract.js/1.0.10/dist/tesseract.js'></script>而不是
<script src="/dist/tesseract.dev.js"></script>但我觉得我好像错过了一种依赖
以下是basic.html代码:
<script src='https://cdn.rawgit.com/naptha/tesseract.js/1.0.10/dist/tesseract.js'></script>
<input type="file" onchange="const worker = new Tesseract.TesseractWorker({ corePath: '../../node_modules/tesseract.js-core/tesseract-core.wasm.js' });worker.recognize(this.files[0]).progress(function(data){console.log(data)}).then(function(data){console.log(data)})">Uncaught : Tesseract.TesseractWorker不是构造函数
发布于 2021-11-24 19:07:46
为了澄清,应该是:
const { createWorker } = require("tesseract.js");
const worker = createWorker();不要像我在几篇关于这个问题的文章中看到的那样使用new,至少在2.0.0-beta.2版本中是这样。
发布于 2020-01-04 09:29:51
当引发此错误时,我了解您在html部分中工作。但我几乎可以肯定,这个错误来自于使用折旧后的TesseractWorker创建构造函数时,
const { TesseractWorker } = require("tesseract.js");
const worker = new TesseractWorker();TesseractWorker在较新版本的tesseract.js和tesseract.js-core中贬值,因此必须使用createWorker()代替。
const { createWorker } = require("tesseract.js");
const worker = new createWorker({
logger: m => console.log(m),
});这将纠正详细说明TesseractWorker不是构造函数的错误,这取决于如果您有tesseract.js的版本2.0+,那么您将被迫使用createWorker,因为TesseractWorker是折旧的。
发布于 2020-03-17 19:18:23
你可以用,
const createWorker = require("tesseract.js");而不是,
const { TesseractWorker } = require("tesseract.js");
const worker = new TesseractWorker();https://stackoverflow.com/questions/57011300
复制相似问题