关于HTML 5 canvas 的基础教程

2012-03-18 23:13

关于HTML 5 canvas 的基础教程

by

at 2012-03-18 15:13:28

original http://item.feedsky.com/~feedsky/bingo929/~7170939/597761176/5279850/1/item.html

HTML 5 规范引进了很多新特性,其中最令人期待的之一就是 canvas 元素HTML 5 canvas 提供了通过 JavaScript 绘制图形的方法,此方法使用简单但功能强大。每一个canvas 元素都有一个”上下文( context )” (想象成绘图板上的一页),在其中可以绘制任意图形。浏览器支持多个 canvas 上下文,并通过不同的 API 提供图形绘制功能。

大部分的浏览器都支持 2D canvas 上下文——包括 Opera, Firefox, KonquerorSafari。而且某些版本的 Opera 还支持 3D canvas ,Firefox 也可以通过插件形式支持 3D canvas :

本文介绍 2D canvas
基础以及如何使用基本 canvas 函数,如线条、形状、图像和文字等。为了理解此文章,你最好了解 JavaScript 基础知识。

可以点击此处批量下载本文实例代码

目录

canvas 基础

创建 canvas 的方法很简单,只需要在 HTML 页面中添加 <canvas> 元素:

<canvas id="myCanvas" width="300" height="150">
Fallback content, in case the browser does not support Canvas.
</canvas>

为了能在 JavaScript 中引用元素,最好给元素设置 ID ;也需要给 canvas 设定高度和宽度。

创建好了画布后,让我们来准备画笔。要在画布中绘制图形需要使用 JavaScript 。首先通过 getElementById 函数找到 canvas
元素,然后初始化上下文。之后可以使用上下文 API 绘制各种图形。下面的脚本在 canvas 中绘制一个矩形 (点击此处查看效果):

// Get a reference to the element.
var elem = document.getElementById('myCanvas');
 
// Always check for properties 和 methods, to make sure your code doesn't break
// in other browsers.
if (elem &amp;&amp; elem.getContext) {
  // Get the 2d context.
  // Remember: you can only initialize one context per element.
  var context = elem.getContext('2d');
  if (context) {
    // You are done! Now you can draw your first rectangle.
    // You only need to provide the (x,y) coordinates, followed by the width and
    // height dimensions.
    context.fillRect(0, 0, 150, 100);
  }
}

可以把上面代码放置在文档 head 部分中,或者放在外é