javascript - Canvas clearRect n'a pas réussi à effacer
黄舟
黄舟 2017-05-31 10:40:24
0
3
1053


Comme le montre l'image, il n'est pas compatible avec certaines machines Android. L'effet sera que lorsque le nombre passe de 1 à 35, 1 n'est pas supprimé et chevauche 35. Comment résoudre ce problème ?
Adresse de démonstration comme suit :
https://chengzhuotc.github.io...

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

répondre à tous(3)
伊谢尔伦

Ajoutez cts.save() devant moveTo ;
Essayez d'ajouter cts.restore() après fillText ;

Ty80

Vous devez vérifier si la plage de clearRect dépasse la taille du canevas. Si c'est le cas, il y aura des bugs inexplicables.

Ty80

Parce que le dessin sur toile peut se chevaucher.
Vous pouvez vous référer à ce blog :
http://www.jianshu.com/p/2d51...
Dans ce blog, clearRect() est utilisé pour effacer le rectangle d'origine avant chaque dessin. Vous pouvez le faire de la même manière dans. Avant de dessiner du texte à chaque fois, effacez le texte original.
Mais après avoir vérifié l'API canevas, j'ai découvert qu'il n'existait pas de méthode claire correspondante pour filltext(), ou peut-être que je ne l'ai pas trouvée.
Je vous propose donc d'essayer :
Dessinez une chaîne vide " " avant chaque dessin, c'est-à-dire
écrasez les mots précédemment écrits puis réécrivez-les. cts.fillText(process+"%",x,y)前加一句cts.fillText(" "+"%",x,y)J'espère que cela vous aidera~

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal