首页 > 解决方案 > React Native - Tesseract.js - 错误:无法为 blob 创建 URL

问题描述

我在 React Native 应用程序(在 Android 平台上)中使用Tesseract.js库时遇到问题。我目前正在应用程序中拍照,将图像信息保存在 a 中base64 string并尝试将其传递给worker.recognize()函数。传递给函数的字符串按如下方式构建:data:image/jpeg;base64,MY_BASE64_STRING. 我还尝试将 URL 传递给图像,并尝试使用图像文件的绝对路径,但总是遇到相同的错误:

错误:无法为 blob 创建 URL!

这是我用于 2.0.0-alpha.13 版本的代码:

const { TesseractWorker } = Tesseract
const worker = new TesseractWorker({
    workerPath: '../../../node_modules/tesseract.js/dist/worker.min.js',
    langPath: '../../assets/lang',
    corePath: '../../../node_modules/tesseract.js-core/tesseract-core.wasm.js',
    })

worker
    .recognize(`data:image/jpeg;base64,${data.base64}`)
    .progress(info => {
        console.log(info)
    })
    .then(result => {
        console.log(result.text)
    })

我尝试使用版本1.0.19和 alpha 版本2.0.0-alpha.13

谢谢大家!♥</p>

标签: javascriptreact-nativetesseract.js

解决方案


根据这个问题,Tesseract.js 不支持 react-native。

https://github.com/naptha/tesseract.js/issues/55

使用这个使用原生移动模块的库。虽然可能不适用于世博会

https://github.com/jonathanpalma/react-native-tesseract-ocr


推荐阅读