Extraire les images d'un GIF animé sur la toile
J'ai besoin de charger toutes les images d'un GIF animé à un HTML5 canvas.
Veuillez noter que je ne veux pas de "jouer" de l'animation (quelqu'un a demandé ça avant), tout ce que je veux est d'extraire toutes les images de les utiliser comme de simples images.
peut-u s'il vous plaît être plus précis
Assurez-vous. À l'aide de javascript+toile, je souhaite charger une seule "anim-gif" fichier (qui est composé de nombreux cadres), et puis je voudrais utiliser chaque single extrait de cadre comme de simples images.
Assurez-vous. À l'aide de javascript+toile, je souhaite charger une seule "anim-gif" fichier (qui est composé de nombreux cadres), et puis je voudrais utiliser chaque single extrait de cadre comme de simples images.
OriginalL'auteur Omiod | 2011-01-10
Vous devez vous connecter pour publier un commentaire.
Désolé, la réponse courte est que JavaScript n'a aucun moyen de contrôler l'image actuelle d'un GIF Animé.
La réponse longue est que il y a des sorte de façons de faire ce que vous voulez, avec JS, mais ils sont très alambiqué hacks.
Exemple de hackish façon: création d'une toile et de ne pas l'ajouter au DOM (donc ce ne sera pas vu par tout le monde). Dans une boucle rapide (setTimeout), tirage de cette toile en permanence et de collecter des instantanés. Comparer la toile données images pour voir si les cadres ont changé ou pas.
Qu'il serait un meilleur usage de votre temps, sans doute, à voir comment vous pouvez obtenir votre serveur à séparer pour vous (avec php/perl/python/etc)
Ce hack ne devrait pas être possible.
when a CanvasImageSource object represents an animated image in an HTMLImageElement, the user agent must use the default image of the animation (the one that the format defines is to be used when animation is not supported or is disabled), or, if there is no such image, the first frame of the animation
html.spec.whatwg.org/multipage/...Cette réponse a été probablement correct à l'époque. Mais aujourd'hui, à l'aide de libgif-js pouvez obtenir le travail fait, et c'est assez facile ainsi.
OriginalL'auteur Simon Sarris
Buzzfeed ont librarified le code de la repo tommitytom posté. Je n'ai pas encore essayé mais ça a l'air bon.
https://github.com/buzzfeed/libgif-js
OriginalL'auteur Brendan
Prendre un coup d'oeil à jsgif; il télécharge un fichier GIF, analyse, et dessine les images du fichier à un
<canvas>
. Avec un peu de creuser, vous devriez être capable de trouver le code qui dessine les images et de les travailler à partir de là.OriginalL'auteur tommitytom