Проблема с получением результата формы tessearct.js в PDF - PullRequest
0 голосов
/ 06 октября 2019

Я создаю простое приложение для оптического распознавания текста (javaScript) с помощью tesseract.js и передаю {tess_create_pdf: "1"} в метод .recognize (), чтобы получить результат в формате pdf, но он не работает. Поэтому, пожалуйста, кто-нибудь, дайте мне знать проблему, которую я делаю.

const express  = require('express');
const app      = express();
const fs       = require('fs');
const multer   = require('multer');
const { createWorker } = require("tesseract.js");
const worker           = createWorker();

app.set("view engine", "ejs");
const storage = multer.diskStorage({
    destination: (req, file, cb) => {
        cb(null, './uploads');
    },
    filename: (req, file, cb) => {
        cb(null, file.originalname);
    }
})

const upload = multer({storage: storage}).single('avatar');

app.get('/', (req, res) => {
    res.render('index');
});

app.post('/upload', (req, res) => {
    upload(req, res, err => {
        fs.readFile(`./uploads/${req.file.originalname}`, (err, data) => {
        if(err) return console.log('this is your error', err);

        (async ()=> {
            await worker.load();
            await worker.loadLanguage('eng');
            await worker.initialize('eng');
            const { data: { text } } = await worker.recognize(data, { tessjs_create_pdf: "1"});
            res.send(text);
            await worker.terminate();
        })();
    });
  })
})

var port = 3000 || process.env.PORT;
app.listen(port, () => {
     console.log("server has started!!!!");
})
...