Javascript Node.js GraphicsMagick附加图像而不保存文件

Javascript Node.js GraphicsMagick附加图像而不保存文件,javascript,node.js,graphicsmagick,Javascript,Node.js,Graphicsmagick,我希望附加和图像到另一个是简单的。但是我需要做的是用gm创建一个映像,并将其放置在另一个映像的底部,而不将第一个映像保存到服务器上。如果我能先保存我的图像,这很容易,但随着事情的发展,情况并非如此 创建图像 gm(600, 100, '#000') .fill('rgba(0,0,0,0.7)') .fill('#fff') .font("Arial.ttf", 16) .drawText(15, 30, 'Heading here') .drawText(15, 55, "Lorem ipsu

我希望附加和图像到另一个是简单的。但是我需要做的是用gm创建一个映像,并将其放置在另一个映像的底部,而不将第一个映像保存到服务器上。如果我能先保存我的图像,这很容易,但随着事情的发展,情况并非如此

创建图像

gm(600, 100, '#000')
.fill('rgba(0,0,0,0.7)')
.fill('#fff')
.font("Arial.ttf", 16)
.drawText(15, 30, 'Heading here')
.drawText(15, 55, "Lorem ipsum dolor sit amet")
.write('text.jpg', function (err) {
  if (err){
    console.log(err)
  } else {
    console.log('done');  
  } 
});
调整另一个图像的大小并附加第一个图像:

gm('img.jpg')
.resize(600)
.append('bottom.jpg')
.write('finished.jpg', function (err) {
  if (err){
    console.log(err)
  } else {
    console.log('done');    
  } 
});

有没有办法不用写第一个文件就可以这样做?

GM有流,所以你可以将第一个流到第二个,或者你甚至可以使用
.toBuffer()
来获取缓冲区而不是保存它。似乎
append()
也应该接受GM对象,所以你可以这样做->谢谢@adeneo。事实上,我早些时候就尝试过这种方法,但它对我不起作用。你在本地测试过吗?没有,现在不能真正测试。GM有流,所以你可以将第一个流到第二个流,或者你甚至可以使用
.toBuffer()
来获取缓冲区而不是保存它。似乎
append()
也应该接受GM对象,所以你可以这样做->谢谢@adeneo。事实上,我早些时候就尝试过这种方法,但它对我不起作用。你在本地测试过吗?没有,现在还不能测试。