J'essaie d'implémenter une application de dessin html5 Actuellement, je peux autoriser la sauvegarde d'une image dessinée Je veux être en mesure d'avoir une fonction de rediffusion qui redessine l'image de manière à ce qu'il ait été dessiné à l'origine presque comme s'il s'agissait d'une vidéo.Toutes les idéesDessin HTML5 avec fonction "replay" "
Répondre
Canvas n'a pas d'arbre DOM comme le suggère joni Canvas dessine des pixels, de sorte que vous ne pouvez pas récupérer ou déplacer des objets après avoir dessiné
Vous pouvez enregistrer un cadre à l'aide de canvas.getImageData() dans un tableau, puis restaurer ces cadres dans le même ordre, en utilisant canvas.putImageData(), même si je ne suis pas sûr de son efficacité. une grande taille de la toile
Exemple:
// Start with an array where you'll save all frames.
var frames = [];
// Save the output of your canvas to the frames array. Do this every X seconds or X amount of drawing.
var frame = myCanvasElement.getImageData(0, 0, myCanvasElement.width, myCanvasElement.height);
frames.push(frame);
// When the user is done drawing, you can do a replay by restoring the frames one by one in a certain interval.
var fps = 15;
var i = 0;
var myInterval = setInterval(function()
{
myCanvasElement.putImageData(frames[i], 0, 0);
i++;
if (i == frames.length)
{
// We've played all frames.
clearInterval(myInterval);
}
}, 1000/fps);
Alors, avez-vous des idées sur ce que je devrais utiliser pour cela? –
J'ai ajouté un échantillon qui pourrait vous aider à avoir l'idée. Vous devez l'ajuster pour le faire fonctionner pour votre situation. – Blaise
Je pense que toute action qui se traduit par le dessin sur la toile que vous enregistrez simplement dans un tableau ordonné.
Vous pouvez ensuite parcourir le tableau et répéter.
C'est la meilleure façon de faire. – Jason
- 1. HTML5 Canvas dessin lignes multicolores
- 2. Partiellement transparent (opacité) HTML5 Dessin sur toile
- 3. Capture d'écran vidéo HTML5
- 4. Dessin 2D avec SlimDX
- 5. Dessin 2D avec Android
- 6. Dessin d'un graphique à partir d'une fonction
- 7. HTML5 avec services Web
- 8. Capture audio avec HTML5
- 9. Lecture audio avec HTML5
- 10. html5 site avec drupal
- 11. Animation avec HTML5
- 12. jQuery et HTML5 Changement DOM Fonction UNDO
- 13. Dessin de cartogrammes avec Matplotlib?
- 14. Dessin sur toile avec iPad?
- 15. Dessin avec Webdings dans PIL
- 16. Dessin d'arbres généalogiques avec WPF
- 17. Performances du dessin avec CGImageCreateWithJPEGDataProvider?
- 18. Dessin de ng avec OpenGL
- 19. Dessin avec Silverlight dans VS2010
- 20. Dessin grand graphique avec graphviz
- 21. Avenir avec HTML5 et CSS3
- 22. Dessin avec GDI et texte avec Qt
- 23. Graphiques vectoriels HTML5 sur toile?
- 24. Création d'une application de dessin/dessin
- 25. Suggestions de contrôle HTML ou Javascript pour le dessin ou le dessin?
- 26. Toile effets de dessin professionnel
- 27. HTML5 Large canvas
- 28. Réécrire une fonction simple dessin Pygame 2D en C++
- 29. À quoi pouvez-vous utiliser la fonction de stockage HTML5?
- 30. "Effacement" dans le canevas html5
Si les éléments sont stockés dans le canevas dans l'ordre dans lequel ils ont été dessinés, ne pouvez-vous pas simplement descendre l'arborescence DOM à l'intérieur du canevas, et utiliser un temporisateur/dormir entre les deux? – joni