Почему в Node.js мой файл PNG не читается правильно? - PullRequest
0 голосов
/ 05 сентября 2018

Я пытаюсь использовать следующий пакет:

https://github.com/photopea/UPNG.js/

со следующим изображением:

enter image description here

Мой код выглядит следующим образом:

const fs = require("fs");
const png = require("upng-js");

async function run() {
    try {
        const data = png.decode(await fs.readFile("./qr.png"));
    } catch (err) {
        console.error(err);
    }
}

run();

Это дает мне следующее сообщение об ошибке:

The input is not a PNG file!

Почему мой файл PNG не читается должным образом?

Ответы [ 2 ]

0 голосов
/ 05 сентября 2018

Ожидание файла с помощью обратного вызова

const fs = require("fs");
const png = require("upng-js");

async function run() {
    try {
        fs.readFile("./qr.png", function(err,content){
            if(!err) {
                const data = png.decode(content);
            }
        });
    } catch (err) {
        console.error(err);
    }
}

run();
0 голосов
/ 05 сентября 2018

Вы можете использовать readFileSync вместо readFile или обещать метод readFile

const fs = require("fs");
const png = require("upng-js");
const Promise = require('bluebird');

async function run() {
    try {
        const data = png.decode(await Promise.promisify(fs.readFile)("./qr.png"));
    } catch (err) {
        console.error(err);
    }
}

run();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...