Home  >  Article  >  Web Front-end  >  HTML5 canvas drawing radioactive gradient color effect code example

HTML5 canvas drawing radioactive gradient color effect code example

小云云
小云云Original
2018-01-04 17:14:202153browse

This article mainly introduces the effect of drawing radioactive gradient colors on html5 canvas. Friends who need it can refer to it. I hope it can help everyone.

Rendering display:

There are still some pitfalls in canvas. For example, fillRect is a method, not an attribute. If you write fillRect=, it will have no effect. And no error is reported....

The createRadialGradient API is used here. This API receives 6 parameters. The first three represent the bottom circle, and the last three represent the upper circle. The returned instance can still be used with addColorStop.

can2_context is the canvas drawing context of 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.bottom_r=bottom_r;
  this.top_x=top_x;
  this.top_y=top_y;
  this.top_r=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;i<arguments.length;i++){
    this.gradient.addColorStop(arguments[i].num,arguments[i].color)
 }
}
Radia.prototype.draw=function(x1,y1,x2,y2){
   can2_context.fillStyle=this.gradient;
   can2_context.fillRect(x1,y1,x2,y2)
}
var some1=new Radia(canvas_2.width/2, canvas_2.height-100, 0, canvas_2.width/2, 0, 300)
some1.addColor({num:0.2,color:"blue"},{num:1,color:"yellow"},{num:0.7,color:"white"})
some1.draw(0, 0, canvas_2.width, canvas_2.height)

Related recommendations:

Color values ​​in CSS3 Detailed explanation of RGBA and gradient colors (picture)

css gradient color omission mark embedded font text shadow detailed introduction

div+css background Gradient color code example

The above is the detailed content of HTML5 canvas drawing radioactive gradient color effect code example. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn