-

HTML canvas fillStyle 属性

HTML canvas 参考手册 HTML canvas 参考手册

实例

定义用红色填充的矩形:

Yourbrowserdoesnotsupportthecanvastag. var c=document.getElementById("myCanvas"); var canvOK=1; try {c.getContext("2d");} catch (er) {canvOK=0;} if (canvOK==1) { var ctx=c.getContext("2d"); ctx.fillStyle="#FF0000"; ctx.fillRect(20,20,150,100); }

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
ctx.fillStyle="#FF0000";
ctx.fillRect(20,20,150,100);

尝试一下 >>

浏览器支持

Internet ExplorerFirefoxOperaGoogle ChromeSafari

Internet Explorer 9、Firefox、Opera、Chrome 和 Safari 支持 fillStyle 属性。

注意:Internet Explorer 8 及之前的版本不支持 <canvas> 元素。


定义和用法

fillStyle 属性设置或返回用于填充绘画的颜色、渐变或模式。

默认值: #000000
JavaScript 语法: context.fillStyle=color|gradient|pattern;

属性值

描述
color 指示绘图填充色的 CSS 颜色值。默认值是 #000000。
gradient 用于填充绘图的渐变对象(线性放射性)。
pattern 用于填充绘图的 pattern 对象。


实例

更多实例

实例

定义从上到下的渐变,作为矩形的填充样式:

Yourbrowserdoesnotsupportthecanvastag. var canvas=document.getElementById("myCanvas2"); var ctx=canvas.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);

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

尝试一下 >>

实例

定义从左到右的渐变,作为矩形的填充样式:

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

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(1,"white");
ctx.fillStyle=my_gradient;
ctx.fillRect(20,20,150,100);

尝试一下 >>

实例

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

Yourbrowserdoesnotsupportthecanvastag. var canvas=document.getElementById("myCanvas4"); var ctx=canvas.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);

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

尝试一下 >>

用到的图像:

Lamp

实例

使用图像来填充绘图:

YourbrowserdoesnotsupporttheHTML5canvastag. document.getElementById("lamp").onload=function() { var c=document.getElementById("myCanvas5"); var canvOK=1; try {c.getContext("2d");} catch (er) {canvOK=0;} if (canvOK==1) { var ctx=c.getContext('2d'); var img=this; var pat=ctx.createPattern(img,'repeat'); ctx.rect(0,0,150,100); ctx.fillStyle=pat; ctx.fill(); } }

JavaScript:

var c=document.getElementById("myCanvas");
var ctx=c.getContext("2d");
var img=document.getElementById("lamp");
var pat=ctx.createPattern(img,"repeat");
ctx.rect(0,0,150,100);
ctx.fillStyle=pat;
ctx.fill();

尝试一下 >>


HTML canvas 参考手册 HTML canvas 参考手册