HTML 5 Canvas
anvas 元素用于在网页上绘制图形。
什么是Canvas?
HTML 5 的 canvas 元素使用 JavaScript 在网页上绘制图像。
画布是一个矩形区域,您可以控制其每一像素。canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
创建Canvas 元向HTML 5 页面添加canvas元素。规定元素的id、宽度和高度:
<canvas id="myCanvas" width="200" height="100"></canvas>
通过JavaScript 来绘制canvas 元素本身是没有绘图能力的。所有的绘制工作必须在
JavaScript 内部完成:
<script type="text/javascript">
var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
</script>
JavaScript 使用id 来寻找 canvas 元素:
var c=document.getElementById("myCanvas");
然后,创建context 对象:
var cxt=c.getContext("2d");
getContext("2d")
对象是内建的HTML 5 对象,拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
下面的两行代码绘制一个红色的矩形:
cxt.fillStyle="#FF0000";
cxt.fillRect(0,0,150,75);
fillStyle
方法将其染成红色,
fillRect方法规定了形状、位置和尺寸。
理解坐标
上面的fillRect 方法拥有参数(0,0,150,75)。
意思是:在画布上绘制 150x75 的矩形,从左上角开始(0,0)。
如下图所示,画布的X 和Y 坐标用于在画布上对绘画进行定位。
实例:把鼠标悬停在矩形上可以看到坐标,
<!DOCTYPE HTML>
<style type="text/css">
{ font-size:70%;font-family:verdana,helvetica,arial,sans-serif; }
</style>
<script type="text/javascript">
function cnvs_getCoordinates(e)
{
x=e.clientX;
y=e.clientY;
document.getElementById("xycoordinates").innerHTML="Coordinates: (" + x + "," + y + ")";
}
function cnvs_clearCoordinates()
{
document.getElementById("xycoordinates").innerHTML="";
}
</script>
<p>把鼠标悬停在下面的矩形上可以看到坐标:</p>
<div id="coordiv" style="float:left;width:199px;height:99px;border:1px solid #c3c3c3"
onmousemove="cnvs_getCoordinates(event)"
onmouseout="cnvs_clearCoordinates()">
</div>
<div id="xycoordinates"></div>