如何将 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 文档中找不到任何内容。当我尝试写入Jimp.bitmap.data文件时,此图像已损坏...


牧羊人nacy
浏览 153回答 1
1回答

MYYA

所以,我找到了解决方案。Jimp lib 中有一个方法可以解决这个问题。但是文档中没有一行没有描述这一点。工作解决方案:const Jimp = require('jimp');const img = Jimp.read('img.png');img.getBuffer(Jimp.MIME_PNG, (err, buffer) => {&nbsp; 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>这对我来说效果很好。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript