Ошибка выброса чтения Jimp "ZLIB привязка закрыта" - PullRequest
0 голосов
/ 28 июня 2019

Довольно новый для Node.js, пытающийся выполнить некоторую обработку изображений, используя Jimp (https://www.npmjs.com/package/jimp).

Однако, когда я попробую следующий пример:

var Jimp = require('jimp');

// open a file called "myImage.png"
Jimp.read('myImage.png', (err, myImage) => {
  if (err) throw err;
  lenna
    .resize(256, 256) // resize
    .quality(60) // set JPEG quality
    .greyscale() // set greyscale
    .write('myImage-small-bw.jpg'); // save
});

Я получаю следующую ошибку:

{ AssertionError [ERR_ASSERTION]: zlib binding closed
    at Inflate._processChunk (/Users/.../node_modules/pngjs/lib/sync-inflate.js:108:3)
    at zlibBufferSync (/Users/.../node_modules/pngjs/lib/sync-inflate.js:151:17)
    at inflateSync (/Users/.../node_modules/pngjs/lib/sync-inflate.js:155:10)
    at module.exports (/Users/.../node_modules/pngjs/lib/parser-sync.js:85:20)
    at Object.exports.read [as image/png] (/Users/.../node_modules/pngjs/lib/png-sync.js:10:10)
    at Jimp.parseBitmap (/Users/.../node_modules/@jimp/core/dist/utils/image-bitmap.js:117:53)
    at Jimp.parseBitmap (/Users/.../node_modules/@jimp/core/dist/index.js:498:32)
    at /Users/.../node_modules/@jimp/core/dist/index.js:440:15
    at FSReqWrap.readFileAfterClose [as oncomplete] (fs.js:490:3)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: undefined,
  expected: true,
  operator: '==',
  methodName: 'constructor' }

Я пытался исследовать, но безуспешно.

Я попробовал написать метод:

new Jimp(256, 256, (err, myImage) => {
  image.write('myImage-small-bw.jpg');  
});

Работает отлично. Любая помощь высоко ценится.

РЕДАКТИРОВАТЬ: после некоторых тестов я заметил, что он не работает только с PNG ...

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