我正在尝试从API请求图像并将其“粘贴”在另一个图像之上。在Photoshop中,我会将图像粘贴到新图层中,然后合并图层。我可以使用gm的composite()来使用Graphicsmagick实现这一点。
gm().command("composite")
.in("path/to/topImg.png")
.in("path/to/bottomImg.png")
.toBuffer('PNG', function(err, buffer) {
if (!err) {return buffer;}
});
但是,composite只接受文件路径。所以我想说我想从http://www.google.com获取徽标。我可以保存图像,在上面的代码中使用它,然后删除它。我正在寻找的是一种方法来实现这一点,而无需先将图像保存到磁盘。
答案 0 :(得分:1)
您可以直接使用网址作为图片路径,而无需下载并保存
gm()
.command("composite")
.in("http://someurl...")
.in("http://someurl...")
.toBuffer('PNG', function(err, buffer) {
if (!err) {return buffer;}
});
但GraphicsMagick使用libxml2的HTTP支持,目前不支持HTTPS。因此,如果您想通过HTTPS下载图像,则需要外部程序。