HTML5 Canvas简单图形绘制[矩形、圆形、线]

标签: html5 canvas 图形 | 发表时间:2012-04-07 11:32 | 作者:_北北
出处:http://www.cnblogs.com/

好了,让各位久等了,我们来看一下如何通过 Javascript绘制矩形,圆形,线这三种简单图形吧。

  先来看一下Dome演示
     

首先我们来学习几个通用方法
设置绘图
fillStyle:[value];填充颜色,这个值可以是颜色的值,可以是16进制值,也可以是rgb或rgba色彩;
strokeStyle:[value];线(边框)颜色,取值同上;
lineWidth:[value];线宽度,是一个数值;
fillRect:矩形填充方法;
strokeRect:矩形画线方法。
我们就用这些属性绘制一个新的矩形吧。

[javascript]

//得到画布上下文,上节已讲,在此不多说
function draw() {
canvas = document.getElementById("canvas");
if (canvas.getContext) { //检测浏览器是否兼容
ctx = canvas.getContext("2d"); //你的canvas代码在这里
return ctx;
}
return null;
}

//画矩形

function juXing() {
var canvas = draw();//获得2d绘图上下文共有方法
canvas.fillStyle = "#2E81CE"; //等同于fillStyle="rgba(46,129,206,1)";
canvas.strokeStyle = "red";
canvas.lineWidth = 2;
canvas.fillRect(10, 10, 100, 120); //填充的四个参数(x,y,width,height)
canvas.strokeRect(10, 10, 100, 120); //线的四个参数(x,y,width,height)
}

[/javascript]

使用路径
beginPath():打开路径
绘制弧形(线):arc(x,y,radius[半径],startAngle[开始弧度],endAngle[结束弧度],anticlockwise[true顺时针绘制,false逆时针绘制]),
这里我们通常会用到Math.PI来设定弧度,顾名思义2*Math.PI即为360度;
moveTo(x,y):移动画点到x,y坐标,你可以想象为拿起画笔;
lineTo(x,y):从画点开始画线到x,y坐标,你可以想象为使用画笔;
closePath():关闭路径;
fill:填充方法;
stroke:画线方法。

下面我们来画一个圆和一组平行线

[javascript]

//画圆形

function Yuan() {
var canvas = draw();
canvas.fillStyle = "#2E81CE"; //等同于fillStyle="rgba(46,129,206,1)";
canvas.beginPath();
canvas.arc(250, 60, 50, 0, 2 * Math.PI, true);
canvas.closePath();
canvas.fill();
}

//画线

function Xian() {
var canvas = draw();
canvas.strokeStyle = "red";
canvas.lineWidth = 5;
canvas.beginPath();
canvas.moveTo(450, 60);//设置起点
canvas.lineTo(600, 60);//画线
canvas.moveTo(450, 160);//拿起画笔到新坐标
canvas.lineTo(600, 160);//画线
canvas.closePath();
canvas.stroke();
}

[/javascript]

最后看一个基本方法, 擦除
clearRect(x,y,width,heigth);要擦除以x,y坐标为起点,width,heigth为长宽的矩形区域里的内容

[javascript]

function Ca() {
var canvas = draw();
canvas.clearRect(0, 0, canvas.width, canvas.height);
}

[/javascript]

Ok,基本图形的绘制就到这里吧,我们下期见,请关注 http://qdgcs.co.cc

本文链接

相关 [html5 canvas 图形] 推荐:

html5 canvas入门

- - Marshal's Blog
可以把canvas看做div,不过,它的长和宽不能通过css来定义,要使用标签属性:. 或者javascript对象属性设置:. 使用canvas,只有一种操作方式,使用javascript. 获得canvas对象的上下文对象,该对象是操作canvas的主要对象:. 使用canvas画最简单的线, 点击运行示例,结果看起来是这样:.

HTML5 Canvas简单图形绘制[矩形、圆形、线]

- - 博客园_首页
好了,让各位久等了,我们来看一下如何通过 Javascript绘制矩形,圆形,线这三种简单图形吧. 首先我们来学习几个通用方法. fillStyle:[value];填充颜色,这个值可以是颜色的值,可以是16进制值,也可以是rgb或rgba色彩;. strokeStyle:[value];线(边框)颜色,取值同上;.

【转载】html5+canvas+js实现图形翻转和文字翻转与竖排

- - HTML5研究小组
出自: http://blog.sina.com.cn/s/blog_71261a2d01010nh3.html.

html5 canvas 图像处理

- - HTML5研究小组
前两天无意中看了下《pro html5 programming》,发现html5竟然也能很好的支持图像处理,在此稍稍交代一下. 与matlab处理图像类似的是,这里也是采用图像矩阵的形式. 下面就介绍一个简单的例子:. context1.drawImage(image,0,0);//绘制原始图像,(0,0)表示图像的左上角位与canvas画布的位置.

备份:html5 canvas cheat sheet

- - 膘叔
纯备份资料,HTML5的canvas资料.

HTML5 Canvas双缓存实例

- - Web前端 - ITeye博客
转自:http://www.108js.com/article/article3/30046.html?id=255. 下面是用HTML5的标签写的一个视差滚动动画的示例. 采用了制作动画或者游戏编程中常用的双缓冲技术:获取到页面中的Canvas对象之后,创建了一个与页面Canvas同样大小的Canvas对象.

HTML5 Canvas: 测试浏览器是否支持Canvas

- - CSDN博客Web前端推荐文章
本文翻译自Steve Fulton & Jeff Fulton. 在获取HTML页面上Canvas元素的引用后,我们需要测试一下该元素是否包含“上下文”(context). Canvas的上下文指的是由浏览器定义的用于绘画的平面. 简单地说,如果上下文不存在的话,Canvas也就名存实亡了. 测试浏览器是否支持Canvas有好几种方法.

HTML5 Canvas开发框架:CasualJS Framework

- Jimmy - ITeye论坛最新讨论
CasualJS Framework是根据ActionScript3?.0的架构开发的一套适用于HTML5 Canvas的面向对象的开发框架. 虽然Canvas提供了强大的绘图功能,但满足不了高级开发的需要. 利用CasualJS的显示对象架构及渲染机制,你可以轻松的在Canvas中操控各种位图、图形、影片剪辑等显示对象.

25 超棒的 HTML5 Canvas 游戏

- 迎客松 - LinuxEden开源社区-Linux伊甸园
Canvas 元素作为HTML5标准的一部分,允许你通过脚本动态渲染点阵图像. 这是为了基于浏览器的矢量图形而设计. HTML Canvas 把一个绘图 API 展现给 JS 客户端,使得脚本能够把想绘制的东西都绘制到一块画布上. 阅读全文 | 邮件推荐 | 评论回复.

HTML5 Canvas(画布)教程 – 图像处理

- - Web前端 - ITeye博客
Canvas标记很多年前就被当作一个新的HTML标记成员加入到了HTML5标准中. 在此之前,人们要想实现动态的网页应用,只能借助于第三方的 插件,比如Flash或Java,而引入了Canvas标记后,人们直接打通了通往神奇的动态应用网页的大门. 本教程内容只覆盖了一小部分、但却是非常重 要的canvas标记的应用功能——图像显示和处理.