Ber*_*rer 18 imagemagick node.js graphicsmagick
我试图将文件读入缓冲区,调整大小,然后使用以下示例代码将其写入磁盘:
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);
}
});
}
Run Code Online (Sandbox Code Playgroud)
但是,这会产生错误Error: Stream yields empty buffer.我玩过,使用过imageMagick和graphicsMagick,还是一样的.
如果我代替
toBuffer(...
用
write('asd.jpg', function(err) ...
它实际上写了一个合适的文件.
编辑在写这个问题时,我找到了解决方案,请参阅回复
Edo*_*Edo 12
面对同样的问题,在我的情况下:安装graphicsmagick二进制文件.
sudo apt-get install graphicsmagick
流产生空缓冲区
这表示graphiksmagick的一般错误.以下是一些可能的原因:
const gm = require('gm').subClass({imageMagick: true});Run Code Online (Sandbox Code Playgroud)
随意添加更多想法作为评论.
| 归档时间: |
|
| 查看次数: |
9762 次 |
| 最近记录: |