Canvas createLinearGradient() 方法

定義和用法

createLinearGradient() 方法創建線性的漸變對象。

漸變可用于填充矩形、圓形、線條、文本等等。

提示:請使用該對象作為 strokeStylefillStyle 屬性的值。

提示:請使用 addColorStop() 方法規定不同的顏色,以及在 gradient 對象中的何處定位顏色。

實例

另請參閱:

定義從黑到白的漸變(從左向右),作為矩形的填充樣式:

Your browser does not support the HTML5 canvas tag.

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);

親自試一試

語法

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

參數值

參數 描述
x0 漸變開始點的 x 坐標。
y0 漸變開始點的 y 坐標。
x1 漸變結束點的 x 坐標。
y1 漸變結束點的 y 坐標。

更多實例

實例 2

定義一個漸變(從上到下)作為矩形的填充樣式:

Your browser does not support the canvas tag.

JavaScript:

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

親自試一試

實例 3

定義一個從黑到紅再到白的漸變,作為矩形的填充樣式:

Your browser does not support the canvas tag.

JavaScript:

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

親自試一試

瀏覽器支持

表中的數字注明了首個完全支持該屬性的瀏覽器版本。

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

注釋:Internet Explorer 8 以及更早的版本不支持 <canvas> 元素。