HTML canvas createLinearGradient() 方法

定义和用法

createLinearGradient() 方法创建线性的渐变对象。

渐变可用于填充矩形、圆形、线条、文本等等。

提示:请使用该对象作为 strokeStylefillStyle 属性的值。

提示:请使用 addColorStop() 方法规定不同的颜色,以及在 gradient 对象中的何处定位颜色。

实例

另请参阅:

定义从黑到白的渐变(从左向右),作为矩形的填充样式:

Browser anda tidak menyokong tag HTML5 canvas.

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var grd=ctx.createLinearGradient(0,0,170,0);
grd.addColorStop(0,"black");
grd.addColorStop(1,"white");
ctx.fillStyle=grd;
ctx.fillRect(20,20,150,100);

Cuba sendiri

语法

context.createLinearGradient(x0,y0,x1,y1);

参数值

参数 描述
x0 渐变开始点的 x 坐标
y0 渐变开始点的 y 坐标
x1 渐变结束点的 x 坐标
y1 渐变结束点的 y 坐标

更多实例

实例 2

定义一个渐变(从上到下)作为矩形的填充样式:

Browser anda tidak menyokong tag canvas.

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var my_gradient=ctx.createLinearGradient(0,0,0,170);
my_gradient.addColorStop(0,"hitam");
my_gradient.addColorStop(1,"putih");
ctx.fillStyle=my_gradient;
ctx.fillRect(20,20,150,100);

Cuba sendiri

实例 3

定义一个从黑到红再到白的渐变,作为矩形的填充样式:

Browser anda tidak menyokong tag canvas.

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var my_gradient=ctx.createLinearGradient(0,0,170,0);
my_gradient.addColorStop(0,"hitam");
my_gradient.addColorStop(0.5,"merah");
my_gradient.addColorStop(1,"putih");
ctx.fillStyle=my_gradient;
ctx.fillRect(20,20,150,100);

Cuba sendiri

Dukungan pelayar

Angka di dalam tabel menunjukkan versi paling awal yang mendukung sifat ini.

Chrome Edge Firefox Safari Opera
Chrome Edge Firefox Safari Opera
4.0 9.0 3.6 4.0 10.1

Komen:Internet Explorer 8 dan versi yang lebih awal tidak mendukung elemen <canvas>.