我正在尝试将文件读入缓冲区,调整其大小,然后使用以下示例代码将其写入磁盘:
function processImage(data) {
gm(data, 'test.jpg')
.resize('300x300')
.background('white')
.flatten()
.setFormat('jpg')
.toBuffer(function(err, buffer) {
if (err) {
throw err;
} else {
fs.writeFile('asd.jpg', buffer);
}
});
}
但是,这会产生错误Error: Stream yields empty buffer
。我玩了一下,用过imageMagick和graphicsMagick,还是一样。
如果我替代
toBuffer(...
with
write('asd.jpg', function(err) ...
它实际上写入了一个正确的文件。
EDIT在写这个问题时我找到了解决方案,请参阅回复
就我而言,面临同样的问题:安装graphicsmagick 二进制文件。
sudo apt-get install graphicsmagick
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)