HTML5教程-用Canvas标签绘制矩形

本文教大家如何在canvas上绘制矩形,当你学会后,可以再举一反三的做一下练习。

注:本节内容,需要您有JS基础才能更好地理解。

绘制矩形的步骤:

1、在页面上创建一个canvas标签

首先在页面上建立一个canvas标签,因为我们所有的操作都要在canvas元素上完成。

2、使用js取得canvas元素

由于需要调用canvas给我们提供的对象方法来进行绘制图形,所以第二部要使用document.getElementById等方法取得canvas对象。

3、取得上下文

进行图形绘制时,需要用到图形上下文(graphics context),它是一个封装了很多绘图功能的对象。需要使用canvas对象的getContext方法来获得图形上下文graphics context。在draw函数中,将参数设置为"2D"。

注:您可能会想,“那可不可以把它设置为3D或者4D了呢?”,答案是,绝对不行。

 4、填充绘制边框

使用canvas元素绘制图形的时候,有两种方式——填充(fill)与绘制边框(stroke)。填充指的是填满图形内部;绘制边框是指不填满图形的内部,只绘制图形的外框。Canvas元素结合这两种方式来绘制图形。

如果到这里您还不理解的话,咱们使用CSS的方式来理解。

把绘制的图形看成div的话,CSS的border就是stroke,CSS的background就是fill,当这两个不存在的时候,canvas中就什么都没有,就好比一个空白透明的div。

5、设定绘图样式

再进行图形绘制的时候,首先要设定好绘图的样式(style),然后调用相关方法进行图形绘制。

6、指定线宽

使用canvas对象提供给我们的lineWidth属性设置图形边框的宽度,在绘制图形的时候,任何直线都可以通过lineWidth属性来指定直线的宽度。

7、指定颜色值

我们分别通过fillStyle属性和strokeStyle属性来制定颜色,它与我们在CSS中设置颜色一样,可以使用“red”、“blue”或者“#ff0000”这种十六进制的颜色值,也可以通过rgb(红色值,绿色值,蓝色值)和rgba(红色值,绿色值,蓝色值,透明度)来指定颜色。

8、绘制矩形

分别使用fillRect方法和strokeRect方法来填充矩形和绘制矩形的边框。

我们只要通过以上步骤,就可以绘制简单的图形了。

案例

  1. <!DOCTYPE HTML> 
  2. <html> 
  3.     <head> 
  4.         <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
  5.         <title>HTML5每日一练之Canvas标签的应用-绘制矩形</title> 
  6.         <script language="javascript" type="text/javascript"> 
  7.                 window.onload = function() 
  8.                 { 
  9.                         var canvas = $.getId("W3Cfuns_canvas") 
  10.                         var content = canvas.getContext("2d");//取得图形上下文 graphics context 
  11.  
  12.                         content.fillStyle = "#eeeeff";//填充canvas的背景颜色 
  13.                         content.fillRect(0, 0, 400, 300);//参数分别表示 x轴,y轴,宽度,高度 
  14.                         content.lineWidth = 1;//边框宽度 
  15.                                  
  16.                         content.strokeStyle = "#00f";//边框颜色 
  17.                         content.strokeRect(50,50,100,100);//边框坐标及大小,试试这个后面的这个代码您就明白了content.strokeRect(50,50,150,150); 
  18.  
  19.                         content.fillStyle = "#f00";//矩形填充颜色 
  20.                         content.fillRect(50,50,100,100);//矩形坐标及大小 
  21.                                  
  22.                 } 
  23.                          
  24.                 var $ = 
  25.                 { 
  26.                         getId:function(_id) 
  27.                         { 
  28.                                 return document.getElementById(_id); 
  29.                         } 
  30.                 } 
  31.         </script> 
  32.     </head> 
  33.      
  34.     <body> 
  35.             <canvas id="W3Cfuns_canvas" width="400" height="300"></canvas> 
  36.     </body> 
  37. </html> 

运行结果如下图:

转载请注明:代码家园 » HTML5教程-用Canvas标签绘制矩形

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
  • yuuk
    2012-09-28 11:44:39发表

    (色)

  • yuuk
    2012-09-28 11:39:21发表

    (色)

  • yuuk
    2012-09-17 09:46:51发表

    (色)