调用HTML5的Canvas API绘制图形的快速入门指南

2019-01-28 14:43:21刘景俊

1. Canvas元素
以下html代码定义了一个canvas元素。

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE html>   <html>  
  2. <head>       <title>Canvas快速入门</title>  
  3.     <meta charset="utf-8"/>   </head>  
  4. <body>   <div>  
  5.     <canvas id="mainCanvas" width="640" height="480"></canvas>   </div>  
  6. </body>   </html>  

通过以下Javascript语句访问canvas元素:

JavaScript Code复制内容到剪贴板
  1. //DOM写法    window.onload = function () {   
  2.     var canvas = document.getElementById("mainCanvas");        var context = canvas.getContext("2d");   
  3. };    //jQuery写法   
  4. $(document).ready(function () {        var canvas = $("#mainCanvas");   
  5.     var context = canvas.get(0).getContext("2d");    });   
  6. //接下来就可以调用context的方法来调用绘图API  

2. 基础API
2.1 坐标系统
Canvas 2D渲染上下文采用平面笛卡尔坐标系统,左上角为原点(0,0),坐标系统的1个单位相当于屏幕的1个像素。具体如下图:
2016617120045425.jpg (220×220)

2.2 绘制基本图形
2.2.1 矩形

JavaScript Code复制内容到剪贴板
  1. //绘制一个填充矩形    context.fillRect(x, y, width, height)   
  2. //绘制一个边框矩形    context.strokeRect(x, y, width, height)   
  3. //清除一个矩形区域    context.clearRect(x, y, width, height)  

2.2.2 线条
绘制线条与绘制图形有一些区别,线条实际上称为路径。要绘制一条简单的路径,首先必须调用beginPath方法,接着调用moveTo设置路径的起点坐标,然后调用lineTo设置线段终点坐标(可多次设置),再调用closePath完成路径绘制。最后调用stroke绘制轮廓(或调用fill填充路径)。以下为例子: