canvas标签createRadialGradient方法用于创建放射状/圆形渐变对象。渐变可用于填充矩形、圆形、线条、文本等等。
绘制放射性/圆形渐变

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>绘制放射性/圆形渐变-HTML教程www.xuandaima.com</title>
</head>
<body>
<canvas id="testCanvas" width="290" height="160" style="border:1px solid #d3d3d3;">
您的浏览器不支持 HTML5的canvas标签。</canvas>
<script>
var c=document.getElementById("testCanvas");
var ctx=c.getContext("2d");
var mygradient=ctx.createRadialGradient(70,70,70,70,70,0);
mygradient.addColorStop(0,"white");
mygradient.addColorStop(1,"orange");
ctx.fillStyle=mygradient;
ctx.fillRect(0,0,200,200);
</script>
</body>
</html>| 说明字段 | 描述 |
|---|---|
| document.getElementById("testCanvas") | 返回文档id属性为"testCanvas"的对象 |
| getContext("2d") | getContext() 返回画布上绘图的环境。getContext("2d") 返回绘制类型(2 维)的环境,未来可能会支持3维,但现在支持2维。 |
| createLinearGradient(70,70,70,70,70,0) | createLinearGradient() 方法创建线性的渐变对象。渐变开始X坐标(70)Y坐标(70),渐变开始圆半径(70)渐变结束X坐标(70)Y坐标(70)渐变结束圆半径(0) |
| addColorStop(0,"white") | 规定第一种颜色"white"白色,位置在百分百(靠外面位置) |
| addColorStop(1,"orange") | addColorStop() 规定渐变对象中的颜色和位置。1是位置(0.0到1.0之间),"orange"是颜色 橙色 |
| ctx.fillStyle=mygradient | fillStyle 属性定义为圆形渐变。 |
| fillRect (0,0,200,200) | fillRect() 绘制"已填充"的矩形,绘制X坐标为0,Y坐标为0,矩形宽为200像素,矩形高为200像素。 |
支持浏览器
注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。





context.createRadialGradient(x0,y0,r0,x1,y1,r1);
| 参数 | 描述 |
|---|---|
| x0 | 渐变的开始圆的 x 坐标 |
| y0 | 渐变的开始圆的 y 坐标 |
| r0 | 开始圆的半径 |
| x1 | 渐变的结束圆的 x 坐标 |
| y1 | 渐变的结束圆的 y 坐标 |
| r1 | 结束圆的半径 |
用放射性/圆形渐变绘制一个矩形

var c=document.getElementById("testCanvas");
var ctx=c.getContext("2d");
var mygradient=ctx.createRadialGradient(75,50,5,90,60,100);
mygradient.addColorStop(0,"orange");
mygradient.addColorStop(1,"white");
ctx.fillStyle=mygradient;
ctx.fillRect(10,10,150,100);| 说明字段 | 描述 |
|---|---|
| document.getElementById("testCanvas") | 返回文档id属性为"testCanvas"的对象 |
| getContext("2d") | getContext() 返回画布上绘图的环境。getContext("2d") 返回绘制类型(2 维)的环境,未来可能会支持3维,但现在支持2维。 |
| createLinearGradient(75,50,5,90,60,100) | createLinearGradient() 方法创建线性的渐变对象。渐变开始X坐标(75)Y坐标(50),渐变开始圆半径(5)渐变结束X坐标(90)Y坐标(60)渐变结束圆半径(100) |
| addColorStop(0,"orange") | addColorStop() 规定渐变对象中的颜色和位置。0是位置(0.0到1.0之间),"orange"是颜色 橙色 |
| addColorStop(1,"white") | 规定第二种颜色"white"白色,位置在百分百(靠外面位置) |
| ctx.fillStyle=mygradient | fillStyle 属性定义为圆形渐变矩形。 |
| fillRect (10,10,150,100) | fillRect() 绘制"已填充"的矩形,绘制X坐标为10,Y坐标为10,矩形宽为150像素,矩形高为110像素。 |