将透明图像序列转换为gif

Bac*_*ash 4 imagemagick

我想将图像序列转换为 gif 动画,我正在使用它:

convert -delay 100 -loop 0 image*.jpg animation.gif
Run Code Online (Sandbox Code Playgroud)

问题是对于透明图像,我可以在动画下看到其他图像。为什么?

例如,对于这两个图像:

在此处输入图片说明 在此处输入图片说明

在生成的 gif 动画中,显示的第一个图像是“A”,第二个是“B”,而不是“B”

在此处输入图片说明

我真的不知道这里发生了什么,我错过了什么?

小智 8

如果您使用该-dispose Background选项,当一个框架被添加到画布时,它会在覆盖下一个图像之前清除背景。例如:

convert -delay 100 -dispose Background *.png anim.gif
Run Code Online (Sandbox Code Playgroud)

更多信息可以在 ImageMagick 文档的动画基础页面中找到。


dob*_*bey 4

GIF 没有透明层。这些图像必须全部具有相同的背景颜色,例如青色,并且该颜色被指定为图像中转换为透明的颜色。您可以传递该颜色以使用该选项进行转换-transparent-color