管道流到graphicsmagick / imagemagick子进程

时间:2012-04-30 15:41:45

标签: node.js imagemagick graphicsmagick

我正在尝试将数据从流传输到子进程。

var gm = spawn( 'gm convert - -thumbnail 220x165^ -gravity center -extent 220x165 thumb.jpg' );
var rs = fs.createReadStream( 'cow.jpg' );

rs.pipe( gm.stdin )

我是否需要在gm上调用end才能使用?同样在我的真实代码中,我从数据库中获取流。

1 个答案:

答案 0 :(得分:10)

如何将请求流式传输到imagemagick中的示例:

var image = request.get(req.params.url);
var size = req.params.size.split('x');
var args = ['-', '-thumbnail', req.params.size + '^', '-gravity', 'center', '-extent', req.params.size, '-' ];
var convert = spawn('convert', args);

image.pipe(convert.stdin);
convert.stdout.pipe(res);

很好地谈论这个:http://vimeo.com/43380478

源代码:https://github.com/felixge/rebel-resize