Я пытаюсь собрать несколько изображений в один поток, который будет передаваться в виде ответа. Я использую Node.js и GraphicsMagick для узла по адресу https://github.com/aheckmann/gm.Как скомпоновать несколько изображений в одном потоке
Если я совмещаю два изображения в потоке, он отлично работает, и для этого примера он показывает две трети финального композита, как и ожидалось. Вот мой код:
app.get('/call_2image_stream', function(req, res){
res.writeHead(200, {'Content-Type' : 'image/png'});
var path = (__dirname + '/test_folder/happy_right.png');
var path2 = (__dirname + '/test_folder/happy_left.png');
gm(path)
.composite(path2)
.stream('png')
.pipe(res);
})
Это прекрасно работает в Почтальон
Но когда я пытаюсь и композитные три изображения не заполняет в нижней части изображения правильно, как предполагалось. Код заключается в следующем:
app.get('/call_3image_stream', function(req, res){
res.writeHead(200, {'Content-Type' : 'image/png'});
var path = (__dirname + '/test_folder/happy_bottom.png');
var path2 = (__dirname + '/test_folder/happy_right.png');
var path3 = (__dirname + '/test_folder/happy_left.png');
gm(path)
.composite(path2)
.composite(path3)
.stream('png')
.pipe(res);
})
Я не могу понять, почему выход таков: