我认为 “答案” 是为了你的目的,它是一个糟糕的动画。使用 ImageMagick 可以看到动画由 12 帧组成:
identify anim.gif
anim.gif[0] GIF 400x350 400x350+0+0 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[1] GIF 1x1 400x350+0+0 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[2] GIF 226x152 400x350+85+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[3] GIF 218x152 400x350+89+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[4] GIF 210x152 400x350+93+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[5] GIF 202x152 400x350+97+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[6] GIF 194x152 400x350+101+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[7] GIF 194x152 400x350+101+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[8] GIF 202x152 400x350+97+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[9] GIF 210x152 400x350+93+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[10] GIF 218x152 400x350+89+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
anim.gif[11] GIF 226x152 400x350+85+8 8-bit sRGB 256c 106KB 0.000u 0:00.000
您可以将图像拆分为其组成帧,并使白色区域透明,如下所示:
convert anim.gif -transparent none frame-%02d.gif
-rw-r--r-- 1 mark staff 9777 4 May 11:11 frame-11.gif
-rw-r--r-- 1 mark staff 9732 4 May 11:11 frame-10.gif
-rw-r--r-- 1 mark staff 9681 4 May 11:11 frame-09.gif
-rw-r--r-- 1 mark staff 9835 4 May 11:11 frame-08.gif
-rw-r--r-- 1 mark staff 9533 4 May 11:11 frame-07.gif
-rw-r--r-- 1 mark staff 9479 4 May 11:11 frame-06.gif
-rw-r--r-- 1 mark staff 9986 4 May 11:11 frame-05.gif
-rw-r--r-- 1 mark staff 9907 4 May 11:11 frame-04.gif
-rw-r--r-- 1 mark staff 10070 4 May 11:11 frame-03.gif
-rw-r--r--@ 1 mark staff 10099 4 May 11:11 frame-02.gif
-rw-r--r-- 1 mark staff 43 4 May 11:11 frame-01.gif
-rw-r--r--@ 1 mark staff 15917 4 May 11:11 frame-00.gif
您也可以像这样将所有帧蒙太奇:
convert anim.gif -transparent white miff:- | montage -tile 3x -frame 5 - montage.jpg
如果你尝试用background的处理方法将帧重新组合在一起,你会丢失只出现在第一帧的welcome这个词:
convert -dispose background frame-0* a.gif
如果您在制作动画之前尝试将第一帧与其他每一帧合成(因此您有“欢迎”),您会得到一个黑色幽灵,因为男孩和女孩角色也出现在第一帧中:
convert frame-00.gif frame-02.gif -geometry +85+8 -composite x.gif
我看到的唯一解决方案是将第一帧放入 Photoshop 中并删除男孩和女孩,然后重建动画......但话又说回来,我不是动画专家,现在所有帧都是 “在桌子上”,别人也许能告诉你一个更简单的方法。