Как конвертировать jimp объект в буфер изображения в узле? - PullRequest
0 голосов
/ 16 марта 2020

Итак, я использую некоторую библиотеку lib для объединения счетных изображений указанным c способом к одному отдельному изображению.

Эта библиотека использует библиотеку Jimp для этого и после всех объединений возвращает Jimp объект. Например:

Jimp {
  _background: 0,
  bitmap: {
    data: <Buffer 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ... 2359246 more bytes>,
    width: 768,
    height: 768
  }
}

После этого соединения мне нужно преобразовать этот Jimp объект в узел Buffer объект без записи изображения в виде файла в dis c и вернуть Buffer, чтобы использовать его на следующих шагах .

Возможно ли это? Я не могу найти что-нибудь в Jimp DOC. И когда я пытаюсь записать Jimp.bitmap.data в файл, это изображение повреждено ...

Спасибо!

1 Ответ

0 голосов
/ 16 марта 2020

Итак, я нашел решение. В Jimp lib есть метод для этого. Но ни один ряд из DOCs не описал это. Рабочее решение:

const Jimp = require('jimp');

const img = Jimp.read('img.png');

img.getBuffer(Jimp.MIME_PNG, (err, buffer) => {
  console.log(buffer);
});

И вывод на консоль:

<Buffer 89 50 4e 47 0d 0a 1a 0a 00 00 00 0d 49 48 44 52 00 00 03 00 ... 211452 more bytes>

Это хорошо работает для меня.

...