我在imagemagick论坛上发现了这个页面:Merging 2 gifs, one is animated and transparent链接到Animation Modification上的imagemagick文档;具体来说,这里的例子是:
convert canvas_prev.gif -coalesce \
-gravity NorthEast -draw 'image over 5,5 0,0 "rose:"' \
-layers Optimize draw_over.gif
这是我的尝试。我有这两个GIF(我可能感觉有点病态)。第一个中的白色实际上是透明的。
当我跑
时convert eyes.gif -coalesce -draw ' image over 0,0 0,0 "trump.gif" ' combine.gif
我明白了:
这不是我想要的完整效果。特朗普动画根本不再播放。
我希望看到更像这样的东西(这是在Phaser JS中创建的,但这使我无法将结果导出为除手动录制截屏视频之外的新图像):
答案 0 :(得分:1)
一种方法,但不确定它是否是最好的,如下:
命令应如下所示:
montage -background none t.gif -tile x1@ -geometry +0+0 tt.png
montage e.gif[0-16,0-9] -tile x1@ -geometry +0+0 ee.png
magick convert -delay 10 -loop 0 ee.png tt.png -coalesce -flatten \
-crop 150x150 +repage output.gif
整蛊部分是带眼睛图像的第二行。它只有17帧,而头骨有27.所以必须调整精灵表的大小。
我工作,但我对此不太满意,因为解决方案需要手动输入一些参数(帧选择和输出图像尺寸)。