【发布时间】:2016-01-20 03:55:23
【问题描述】:
我正在使用 GM 做非常简单的事情:画一个圆圈并将其放入缓冲区。但是在我将代码签入 Elastic Beanstalk 后,我收到“流产生空缓冲区错误”错误。我不知道为什么,因为它完全可以在 localhost 上运行。
代码如下:
gm(200, 200, '#FF0000')
.setFormat('png')
.fill('#00FF00')
.drawCircle( 50, 50, 60, 60 )
.toBuffer(function( error, buffer )
{
if( error ) { res.send("error:"+error+" with content length:"+data.ContentLength);}
res.writeHead(200, {'Content-Type': 'image/png' });
res.end(buffer, 'binary');
}
非常感谢!
更新 我在本地和 EC2 上运行:gm convert -list format,发现 EC2 缺少对它的 PNG 和 JPEG 支持。想知道如何添加支持。有什么线索吗?
【问题讨论】:
-
黑色背景上的黑色圆圈永远不会有多大意义——尤其是当您将其编码为 PNG 并告诉浏览器有 GIF 即将到来时 ;-)
-
:-) 感谢您指出。响应代码是从实际生产代码中复制而来的。但它给出了同样的错误。所以我使用了一个简单的 gm 初始化来查看问题所在。但这不应该导致缓冲区错误,对吧?
-
只是为了好玩,您可以尝试将背景设置为“#FF0000”之类的内容,并将填充设置为
#00FF00吗? -
已编辑!现在颜色不是黑底黑了
标签: node.js imagemagick amazon-elastic-beanstalk graphicsmagick