我想从这些帧.png图片制作动画gif:
我尝试做的是将其调整为较小的图像,将其分成4个部分,然后将其设置为动画。首先,我使用此命令调整大小并将其拆分
mogrify -resize 140x140 -crop 2x2@ ps1.png
返回4张图片似乎运作良好,如下:
现在,我用它来制作一个有生命的GIF:
convert -delay 25x100 -loop 0 ps1-*.png ps1.gif
但是它返回了这个混乱的图像,而不是猫哭:
答案 0 :(得分:2)
每个角落的图像来自图像页面偏移。您可以通过针对identify
实用程序运行生成的帧来查看此内容。
identify ps1-*.png
# ps1-0.png PNG 70x46 140x92+0+0 8-bit sRGB 4.24KB 0.000u 0:00.009
# ps1-1.png[1] PNG 70x46 140x92+70+0 8-bit sRGB 4.26KB 0.000u 0:00.000
# ps1-2.png[2] PNG 70x46 140x92+0+46 8-bit sRGB 4.39KB 0.000u 0:00.000
# ps1-3.png[3] PNG 70x46 140x92+70+46 8-bit sRGB 4.64KB 0.000u 0:00.000
# ^^^ ^^ ^^ ^^
要解决此问题,只需通过+repage
运行提取的图像来删除分页偏移。
mogrify +repage ps1-*.png
要动画制作GIF,请确保指定layers to be handled的方式。在这个例子中,我相信你会想要优化帧或加号。 Dispose& coalesce也可用于调整生成的动画。
convert -layers OptimizePlus -delay 25x100 ps1*.png -loop 0 ps1.gif