最新的Web开发教程

HTML5 Canvas


您的浏览器不支持<canvas>元素。

的HTML <canvas>元件用于绘制在网页上的图形。

图形向左与创建<canvas> 。 它显示了四个元件:一个红色矩形,梯度矩形,多色矩形和多色文本。


什么是HTML Canvas

的HTML <canvas>元素用于绘制图形,在飞行中,通过脚本(usually JavaScript)

所述<canvas>元素仅用于图形的容器。 您必须使用脚本来实际绘制图形。

Canvas具有绘制路径,矩形,圆形,文本和添加图像的几种方法。

画布元件是HTML5的一部分,并且允许在2D形状和位图图像的动态,脚本化渲染。 它是一种低层次的,程序模式,更新位图,没有一个内置的场景图。


浏览器支持

在表中的数字指定完全支持所述第一浏览器版本<canvas>元素。

元件
<canvas> 4 9 2.0 3.1 9

历史

帆布最初是由苹果公司推出了2004年供电应用,如Dashboard构件和Safari浏览器自己的Mac OS X的WebKit组件内部使用。

后来,在2005年它在的Gecko的浏览器和Opera 1.8版本于2006年通过,并通过网络超文本应用技术工作组(WHATWG)在新提出的规格为下一代Web技术标准化。


用法

画布在于HTML代码定义的高度和宽度的属性的可拉伸区域的。 JavaScript代码可以通过全套类似其他常见2D的API的绘图功能访问区域,从而允许动态地产生的图形。

帆布的一些预期用途包括建筑图形,动画,游戏和图片组成。


Canvas例子

一个canvas是一个HTML页面上的矩形区域。 默认情况下, canvas有没有边界,没有内容。

该标记看起来是这样的:

<canvas id="myCanvas" width="200" height="100"></canvas>

Note:总是指定的id属性(to be referred to in a script) ,和一个宽度和高度属性来定义的大小canvas

要添加边框,使用style属性:

基本Canvas

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #000000;">
</canvas>
试一试»

使用JavaScript绘图

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.fillStyle = "#FF0000";
ctx.fillRect(0,0,150,75);
试一试»

画一条线

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.moveTo(0,0);
ctx.lineTo(200,100);
ctx.stroke();
试一试»

画一个圆

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.arc(95,50,40,0,2*Math.PI);
ctx.stroke();
试一试»

绘制文本

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.fillText("Hello World",10,50);
试一试»

行程文本

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "30px Arial";
ctx.strokeText("Hello World",10,50);
试一试»

绘制线性渐变

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");

// Create gradient
var grd = ctx.createLinearGradient(0,0,200,0);
grd.addColorStop(0,"red");
grd.addColorStop(1,"white");

// Fill with gradient
ctx.fillStyle = grd;
ctx.fillRect(10,10,150,80);
试一试»

绘制圆形渐变

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");

// Create gradient
var grd = ctx.createRadialGradient(75,50,5,90,60,100);
grd.addColorStop(0,"red");
grd.addColorStop(1,"white");

// Fill with gradient
ctx.fillStyle = grd;
ctx.fillRect(10,10,150,80);
试一试»

绘制图像

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var img = document.getElementById("scream");
ctx.drawImage(img,10,10);
试一试»

HTML Canvas教程

要了解所有关于HTML <canvas>请访问我们的完整的HTML Canvas教程