J'ai cette application de peinture doigts et je veux que mes utilisateurs puissent sauver ce qu'ils dessinent et revenaient plus tard et continuent à dessiner. P>
Quel est le moyen plus léger de faire cela? P>
3 Réponses :
Une façon dont vous pouviez faire ceci est: p>
Enregistrer le contenu de la toile sous forme d'image PNG codée de base64 en appelant Canvas.Todataurl () et stockez la chaîne codée dans la page localStorage a>. p>
Lorsque vous souhaitez restaurer la toile, vous créez une image, définissez la valeur SRC pour être la valeur précédemment stockée localement, puis dessinez cette image sur la toile. P>
Il existe d'autres méthodes, telles que l'enregistrement de toutes les opérations de dessin, les stockant localement ou dans une session de serveur et "les rejouer" lorsque la page est visitée. p>
Merci, @andrewmu. Selon vous, que sera plus léger?
Cela dépend de la complexité du dessin - pour quelques opérations sur une grande toile, stockant les opérations serait plus efficace. Pour un dessin très complexe avec beaucoup d'opérations, le stockage de l'image serait le mieux. Je pense que globalement je dirais stocker l'image - c'est compressé, des dessins simples doivent toujours être assez petits.
bouton d'enregistrement HTML: puis script: p> alors vous devrez utiliser le dessin des toiles avec l'image qui était enregistré. Comment / où vous enregistrez l'image (votre serveur, leur dossier de téléchargement) dépend de la manière dont vous le souhaitez. P> p>
Vous pouvez utiliser des fichiers JS. Il a une méthode qui aident Serialize à JSON, puis vous pouvez enregistrer ce JSON dans dB. Documentation P>