Rendre les arrière-plans des fichiers GIF animés transparents


13

J'ai créé des fichiers GIF animés en utilisant GIMP à partir de plusieurs images au format PNG que j'ai créées en utilisant Jmol et maintenant je voudrais savoir comment rendre l'arrière-plan des fichiers GIF résultants transparents. Tout logiciel ou site Web que vous proposez devrait être disponible gratuitement, s'il vous plaît.


Avez-vous fait des efforts? Voir ici et .
Paolo Gibellini

Je l'ai déjà fait auparavant, mais cela ne convient pas de voir comment ce GIF est animé, pas statique car ces méthodes ne sont utiles que pour les images statiques. Afin de faire ce que vous suggérez en me montrant ces deux questions, je devrais rendre chacun des fichiers PNG que je convertis en GIF transparent individuellement et voir comment j'utilise 60 images par GIF qui prendrait un certain temps, surtout voir comment d'après mon expérience, chaque image prend au moins 5 minutes à faire, car la couleur alpha est loin d'être parfaite et nécessite quelques bidouilles pour fonctionner.
BH2017

1
Je ne connais pas Jmol, mais voici un sujet lié au fond alpha (voir aussi ici ). Avez-vous exporté au format PNGT les cadres?
Paolo Gibellini

GIMP peut déjà créer des GIF avec transparence.
Billy Kerr

Réponses:


16

Vous pouvez le faire avec GIFsicle , en utilisant les options suivantes:

gifsicle -U --disposal=previous --transparent="#ffffff" -O2 anim.gif > anim_trans.gif

anim.gifet anim_trans.gifsont les noms des fichiers source et de destination, et #ffffffest le code hexadécimal de la couleur que vous souhaitez rendre transparente (ici, blanc pur).

(Les options importantes ici sont -U/ --unoptimizeet --disposal=previous, qui convertissent ensemble l'animation en "mode flipbook", où chaque image est entièrement effacée avant de dessiner la suivante. Cela permet d'ajouter une transparence supplémentaire aux images sans laisser les images précédentes apparaître à travers le parties transparentes. L' -O2option n'est pas strictement nécessaire, mais elle est susceptible de réduire la taille du fichier de l'animation résultante en optimisant les images pour éviter de redessiner inutilement les parties statiques de l'animation.)

Pour une démonstration, voici une animation de l'enzyme glyoxalase I (GLO1) humaine de Wikimedia Commons (à gauche), et la même animation avec transparence ajoutée en utilisant la méthode indiquée ci-dessus (à droite):

Animation originale avec fond blanc Animation modifiée avec fond transparent
Animation originale de l'utilisateur de Wikimedia Commons WillowW , utilisée sous la licence CC-By 3.0 .

Un détail à noter est que, si la commande GIFsicle ne semble pas avoir d'effet, vous devez vérifier que la couleur d'arrière-plan est vraiment correcte. Par exemple, pour l'animation illustrée ci-dessus, la couleur d'arrière-plan réelle s'est révélée être #fdfffc(c'est-à-dire très légèrement jaune-verdâtre) plutôt que #ffffff(blanc pur). Vous ne pouvez pas réellement faire la différence à l'œil nu (ou, du moins, je ne peux pas faire cela sur cet écran), mais cela suffit pour que GIFsicle considère les deux couleurs différentes.

Notez également que les fichiers GIF ne prennent en charge que la transparence 1 bit, ce qui signifie que les bords des régions transparentes ne seront pas anticrénelés. C'est OK tant que l'arrière-plan sur lequel vous montrez l'animation n'est pas trop loin de la couleur d'arrière-plan d'origine, mais si c'est le cas, vous constaterez peut-être qu'il y aura une frange de couleur moche autour des bords de l'animation. Malheureusement, vous ne pouvez pas faire grand-chose à ce sujet, sauf pour choisir un arrière-plan plus adapté ou pour restituer l'animation.


Avez-vous une alternative logicielle compatible avec Windows 7 à gifsicle que je pourrais utiliser à la place? J'ai essayé d'installer le binaire Win32 et 64 (j'utilise Windows 7 64 bits, à partir du lien sur le site officiel de gifsicle) et aucun n'a fonctionné. Il a juste fait apparaître une invite de commande, pendant une seconde, puis cette invite s'est fermée. Depuis, j'ai ouvert l'invite de commande (si je comprends bien, gifsicle est un éditeur basé sur la ligne de commande) et j'ai copié-collé vos commandes (avec les noms de fichiers réels, ofc) et il a donné un fichier nul avec un avertissement disant que gifsicle n'était pas reconnu sur mon système.
BH2017

Hmm ... avez-vous essayé d'utiliser l'invite de commande et de spécifier le chemin d'accès complet à gifsicle.exe? Ou - cddans le dossier dans lequel vous avez installé gifsicle et exécutez la commande à partir de là? Ou ajouter ce dossier dans votre%PATH% ?
Ilmari Karonen

cd- Dans le répertoire, l'exécution de cette commande a parfaitement fonctionné sans accroc, donc j'accepterai votre réponse.
BH2017


1

Comme GIFsicle et GIFmagic, EzGIF est un ensemble d'outils GIF en ligne qui (entre autres) vous permet de faire cela:

  1. Choisissez "Effets"
  2. télécharger le GIF
  3. puis utilisez la case "Remplacer la couleur par la transparence"
  4. et postuler

(Vous pouvez ensuite également optimiser le résultat si vous le souhaitez)


0

Si vous avez imagemagick, vous pouvez exécuter la commande convert input.gif -transparent white output.gifdans un terminal.


Pouvez-vous expliquer ce que fait cette commande? Nous recherchons des réponses plus longues avec une explication, pas des lignes simples. De plus, il semble qu'il convertisse la couleur blanche en transparent, alors sélectionnera-t-il également tout ce qui est blanc dans l'image?
Luciano

0

Vous pouvez le faire directement depuis Photoshop.

Utilisez l'option «Enregistrer sur le Web» et enregistrez-la au format GIF avec transparence. Trouvez la couleur que vous souhaitez rendre transparente dans la table des couleurs. Cliquez dessus, puis cliquez sur le bouton que j'ai encerclé en rouge.

Transparence de la table des couleurs

Cela rendra transparente la couleur que vous avez sélectionnée. Sauvegarder.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.