Il y a encore quelques pièges dans canvas. Par exemple, fillRect est une méthode, pas un attribut. Si vous écrivez fillRect=, cela n'aura aucun effet et ne signalera pas d'erreur....
L'API createRadialGradient est utilisée ici. Cette API reçoit 6 paramètres. Les trois premiers représentent le cercle inférieur et les trois derniers représentent le cercle supérieur. L'instance renvoyée peut toujours être utilisée avec addColorStop.
can2_context est le contexte de dessin du canevas de getContext
function Radia(bottom_x,bottom_y,bottom_r,top_x,top_y,top_r){ this.bottom_x=bottom_x; this.bottom_y=bottom_y; this.top_x=top_x; top_r; this.gradient=can2_context.createRadialGradient(this.bottom_x,this.bottom_y,this.bottom_r,this.top_x,this.top_y,this.top_r)}Radia.prototype.addColor=function(){ for(var i=0; je<arguments.longueur;i++){ this.gradient.addColorStop(arguments[i].num,arguments[i].color) }}Radia.prototype.draw=function(x1,y1,x2,y2){ can2_context.fillStyle=this.gradient; (x1,y1,x2,y2)}var some1=nouveau Radia(canvas_2.width/2, canvas_2.height-100, 0, canvas_2.width/2, 0, 300)some1.addColor({num:0.2,color:bleu},{num:1,color:jaune},{num:0.7,color:blanc })some1.draw(0, 0, toile_2.largeur, toile_2.hauteur)Résumer
Ce qui précède est l'effet de dégradé radioactif de dessin sur toile html5 introduit par l'éditeur. J'espère qu'il vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Je tiens également à remercier tout le monde pour votre soutien au site d'arts martiaux VeVb !