Как преобразовать объект jimp в буфер изображения в узле?

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

Эта библиотека использует для этого библиотеку 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 объект без записи изображения в виде файла на диск и возврат Buffer чтобы использовать его в следующих шагах.

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

Спасибо!

1 ответ

Решение

Итак, я нашел решение. Для этого есть метод в Jimp lib. Но ни одна строка из ДОК этого не описывает. Рабочий раствор:

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>

Для меня это работает очень хорошо.

Другие вопросы по тегам