html5中Canvas为什么要用getContext('2d')

时间:2023-03-08 17:28:38
html5中Canvas为什么要用getContext('2d')

HTML DOM getContext() 方法

HTML DOM Canvas 对象

定义和用法

getContext() 方法返回一个用于在画布上绘图的环境。

语法

Canvas.getContext(contextID)

参数

参数 contextID 指定了您想要在画布上绘制的类型。当前唯一的合法值是 "2d",它指定了二维绘图,并且导致这个方法返回一个环境对象,该对象导出一个二维绘图 API。

提示:在未来,如果 <canvas> 标签扩展到支持 3D 绘图,getContext() 方法可能允许传递一个 "3d" 字符串参数。

返回值

一个 CanvasRenderingContext2D 对象,使用它可以绘制到 Canvas 元素中。

描述

返回一个表示用来绘制的环境类型的环境。其本意是要为不同的绘制类型(2 维、3 维)提供不同的环境。当前,唯一支持的是 "2d",它返回一个 CanvasRenderingContext2D 对象,该对象实现了一个画布所使用的大多数方法。

举个简单的例子,画一个五子棋棋盘为例:

<canvas id="chess" width="450px" height="450px"></canvas>
var chess = document.getElementById("chess");
var context = chess.getContext("2d"); context.strokeStyle = "#0A0A0A"; var logo = new Image();
logo.src = "image/chess.jpg"; //图片加载完毕后的回调方法
logo.onload = function(){
//画键盘
context.drawImage(logo, 0, 0, 450, 450);
drawChessBorad(); } var drawChessBorad = function(){
for(var i = 0; i < 15; i++){
context.moveTo(15 + i*30, 15);
context.lineTo(15 + i*30, 435);
context.moveTo(15, 15 + i*30);
context.lineTo(435, 15 + i*30);
context.stroke();
}
}