类型错误:worker.load 不是函数

问题描述 投票:0回答:2

当我想从 pdf 或图像文件中提取文本时,我使用 vue.js 和 nuxt.js。这似乎不起作用。我不知道为什么。 这是我第一次提问,如果您想了解更多信息。请随时询问我。我被这个错误困扰了 4 天 T^T。我真的需要帮助。

我尝试修复此错误。我想要的只是修复错误。

async parseFile() {
      if (this.uploadedFile) {
        const fileType = this.getFileType(this.uploadedFile.name);
        if (fileType === "image") {
          const worker = createWorker();
          await worker.load();
          await worker.loadLanguage("eng");
          await worker.initialize("eng");
          const {
            data: { text },
          } = await worker.recognize(this.uploadedFile);
          console.log(text);
          await worker.terminate();
        } else if (fileType === "pdf") {
          const fileReader = new FileReader();
          fileReader.onload = async () => {
            const typedArray = new Uint8Array(fileReader.result);
            const pdf = await pdfjsLib.getDocument(typedArray).promise;
            const numPages = pdf.numPages;
            let pdfText = "";
            for (let i = 1; i <= numPages; i++) {
              const page = await pdf.getPage(i);
              const content = await page.getTextContent();
              const pageText = content.items.map((item) => item.str).join(" ");
              pdfText += pageText + "\n";
            }
            console.log(pdfText);
          };
          fileReader.readAsArrayBuffer(this.uploadedFile);
        }

javascript vue.js vuejs2 nuxt.js tesseract.js
2个回答
0
投票

只是一个建议, 检查函数 createWorker() 是否未正确导入,或者您正在使用的库是否存在问题,以及 还要检查您是否已安装必要的依赖项


0
投票

使用此版本=“tesseract.js”:“^2.1.5” 它会运行。

© www.soinside.com 2019 - 2024. All rights reserved.