5 votes

Convertir une séquence d'images transparentes en gif

Je veux convertir une séquence d'images en une animation gif, et j'utilise ceci :

convert -delay 100 -loop 0 image*.jpg animation.gif

Le problème est que pour les images transparentes, je peux voir d'autres images sous l'animation. Pourquoi ?

Par exemple, avec ces deux images :

enter image description hereenter image description here

Dans l'animation gif générée, la première image affichée est l'image "A", et la seconde, au lieu de l'image "B", est l'image "B".

enter image description here

Je ne sais vraiment pas ce qui se passe ici, qu'est-ce que je rate ?

9voto

Walfie Points 191

Si vous utilisez le -dispose Background lorsqu'un cadre est ajouté à la toile, il efface l'arrière-plan avant que l'image suivante ne soit superposée. Par exemple, cette option permet d'effacer l'arrière-plan avant de superposer l'image suivante :

convert -delay 100 -dispose Background *.png anim.gif

Des informations supplémentaires peuvent être trouvées dans le Page sur les bases de l'animation de la documentation d'ImageMagick.

4voto

lak-b Points 764

Les GIF n'ont pas de couches transparentes. Les images doivent toutes avoir la même couleur de fond, comme, par exemple, le cyan, et cette couleur est spécifiée comme étant la couleur qui sera convertie en transparent, dans l'image. Vous transmettez cette couleur à convertir à l'aide de l'option -transparent-color option.

0voto

user988429 Points 1

Pour moi, cela fonctionne correctement :

convert -delay 100 -dispose 3 -loop 0 image*.jpg animation.gif

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X