GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment convertir une bande Png en gif ?

Donc, j'ai fait cette animation dans un programme, cependant, il ne semble pas prendre en charge l'exportation en tant que séquence PNG afin que je puisse la convertir en GIF. L'animation fait plus de 100 images, donc enregistrer chaque image une par une prendra du temps. Cependant, il prend en charge l'exportation sous forme de "bande", qui ressemble à un film. Chaque image de l'animation a les mêmes dimensions. Voici comment fonctionne la fonction "strip" du programme.

Les images de l'animation sont empilées horizontalement, la première image étant à l'extrême gauche tandis que la dernière image est à l'extrême droite. Il n'y a pas d'espace entre les images et le nom du fichier est généralement "name_stripX.png" si l'animation comporte X images. Si chaque image était de 32 par 32 et que l'animation avait 8 images, ce fichier aurait une largeur de 256 et une hauteur de 32.

Voici quelques exemples de sortie, chaque couleur remplit un cadre :

De plus, juste pour clarifier un peu plus les choses, le programme s'appelle "Game Maker 8.0".

Réponse acceptée :

Vous pouvez utiliser ImageMagick pour convertir des images de différentes manières, et il devrait pouvoir le faire assez facilement. Vous pouvez d'abord diviser en plusieurs parties (original.png étant l'image source, et dans ce cas 32x32pixels en taille) :

convert original.png -crop 32x32 parts-%02d.png

Vous pouvez ensuite le convertir en animation (utilisez -loop 1 si vous ne voulez pas qu'il boucle):

convert -loop 0 -page +0+0 ./parts*.png output.gif

Résultant en :

Les PNG de sortie de la première commande ont un décalage inclus, donc sans le -page +0+0 option l'animation se termine comme :

Il existe diverses autres options que vous pouvez inclure (principalement dans la deuxième commande), telles que -delay etc - vous pouvez également optimiser l'animation afin qu'elle soit plus petite (et plus rapide à charger/rendre) - par ex. emprunté d'ici :

convert output.gif -fuzz 10% -layers Optimize optimised.gif

ou en utilisant gificle

gifsicle -O output.gif -o optimised.gif

MODIF : Si les cadres sont transparents, vous pouvez définir les cadres à remplacer en ajoutant le
-dispose Background option, ainsi lorsqu'un cadre est supprimé lorsque le suivant est chargé :


Le problème avec cela est que vous ne pouvez probablement pas optimiser beaucoup l'image résultante - donc une autre façon peut être de rendre les cadres opaques afin que le cadre suivant recouvre le précédent.

Connexe :Électricité – Convertir la veilleuse + la prise commutée en une prise non commutée ?
Ubuntu
  1. Comment convertir plusieurs images en PDF dans Ubuntu Linux

  2. Comment convertir CentOS 8 en flux CentOS

  3. Comment convertir un fichier son en Opus ?

  4. Convertir les glyphes TrueType en image PNG ?

  5. Comment convertir tar.bz2 en tar.gz ?

Comment convertir par lots des images PNG au format JPG sous Linux

Comment convertir un fichier Windows en un fichier UNIX

Comment convertir une vidéo en GIF sous Linux [Méthodes Terminal et GUI]

Comment convertir une page Web en PDF sous Linux

Comment convertir un PDF en images PNG et inversement sous Linux

Comment convertir un PDF en image avec Gimp