/ / comment faire une image animée de haute qualité avec imagemagick - imagemagick

comment faire une image animée de haute qualité avec imagemagick - imagemagick

Je veux créer un gif animé à partir de ces images .png:

entrer la description de l'image icientrer la description de l'image icientrer la description de l'image icientrer la description de l'image ici

Je le fais avec cette commande:

convert -layers OptimizePlus -delay 25x100 ps1-*.png -loop 0 ps1.gif

Il a fait un gif animé avec succès, cependant, la sortie a une qualité très faible et plus petite que les images d'entrée:

entrer la description de l'image ici

Après quelques recherches, j'ai eu la qualité

convert -layers OptimizePlus -delay 25x100 -quality 99 ps1-*.png -loop 0 ps1.gif

Mais imagemagick semble ignorer le paramètre.

Réponses:

41 pour la réponse № 1

Le problème est que vos fichiers PNG source ont un canal alpha qui n'est pas pris en charge par les fichiers GIF. Donc, vous devez supprimer la transparence à partir de vos images sources en premier. Comme vous traitez avec plusieurs images sources, vous ne pouvez pas utiliser le -flatten méthode. Avec les nouvelles versions d'ImageMagick, les éléments suivants devraient fonctionner:

convert -background white -alpha remove -layers OptimizePlus -delay 25x100 ps1-*.png -loop 0 ps1.gif

Si votre version d'ImageMagick est antérieure à 6.7.5, vous pouvez essayer:

convert -bordercolor white -border 0 -layers OptimizePlus -delay 25x100 ps1-*.png -loop 0 ps1.gif

J'ai obtenu le résultat suivant avec cette dernière commande:

animation