Tessearct.js不起作用:无法在"HTMLCanvasElement"上执行'toBlob':可能无法导出受污染的画布



我在Chrome上运行这个,我使用一个节点来设置服务器。

这是我的HTML

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/async/3.2.0/async.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.8.3/modernizr.min.js" type="text/javascript"></script>
<script src='https://unpkg.com/tesseract.js@v2.1.0/dist/tesseract.min.js'></script>
<script src="js/canvas-to-blob.min.js"></script>
<title>Slicer</title>
<script type="module" src="sketch.js"></script>
</head>
<body></body>

我的javascript(复制自github.com/naptha/tesseract.js/bob/master/docs/examples.md(

const { createWorker } = require('tesseract.js');
const worker = createWorker();
const rectangle = { left: 0, top: 0, width: 500, height: 250 };
(async () => {
await worker.load();
await worker.loadLanguage('eng');
await worker.initialize('eng');
const { data: { text } } = await worker.recognize(imageURL, { rectangle });
console.log(text);
await worker.terminate();
})();

我的错误是:未捕获的DOMException:未能在"HTMLCanvasElement"上执行"toBlob":可能无法导出损坏的画布。

以下是我尝试过的:

  • 添加了crossOrigin=";匿名者":它什么都没改变
  • 已将blueimp画布下载到blob
  • 尝试在终端上单独运行代码[I get this error"RuntimeError:abort(TypeError:未能从/path_to_project/node_modules/tesseract.js core/tesseract core.wasm(分析URL(//文件就在那里
  • 已下载并使用canvas到blob

我能做些什么来解决这个问题?

请使用tesseract.js 2.0.0版本。

相关内容

最新更新