html5汹涌而来。拿来玩玩。今天学习canvas。
首先上个例子,自己写了一个实现圆角矩形方法。
function drawRoundRect(ctx,x,y,w,h){
var d1 = 1/40*w; //设置 d1 d2的默认长度 为贝塞尔曲线取中间控制点做准备
var d2 = 1/50*w ;
ctx.beginPath();
// 第一个节点
ctx.moveTo(x,y+d1+d2) ; //起始点
ctx.bezierCurveTo(x,y+d1,x+d1,y,x+d2+d1,y); //第一个圆角
ctx.lineTo(x+w-d1-d2,y); //连接线
ctx.bezierCurveTo(x+w-d1,y,x+w,y+d1,x+w,y+d1+d2); //第二个圆角
ctx.lineTo(x+w,y+h-d1-d2); //连接线
ctx.bezierCurveTo(x+w,y+h-d1,x+w-d1,y+h,x+w-d1-d2,y+h); //第三个圆角
ctx.lineTo(x+d1+d2,y+h); //连接线
ctx.bezierCurveTo(x+d1,y+h,x,y+h-d1,x,y+h-d1-d2); //第四个圆角
ctx.lineTo(x,y+d1+d2);//连接线
ctx.strokeStyle='#99ff00'; //设置画线颜色
ctx.stroke();//画线
}//画出圆角矩形 x y 为起始结点,w,h 为宽高 ctx 为画布环境
html5头部的声明如下:
<!DOCTYPE html>
html5页面如下:
<!DOCTYPE html>
<html class="no-js">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />
<title>html5 测试</title>
<script src="../js/modernizr-2.0.6.js"></script>
<style type="text/css">
.html-canvas{
width:300px;
height:400px;
}
</style>
</head>
<body>
<canvas id="draw-in-me" class="html-canvas">
<p>powered by html5</p>
</canvas>
<script src="../js/test1.js"></script>
</body>
</html>
使用了modernizer对浏览器是否支持相关功能进行检测。
getContext('2d'); //目前还只是支持获取2d画布环境
canvas 图形的话,只能画矩形,其余就只能画线。当然圆也可以。
画线的工具函数:
moveTo(x,y); //起始点设置
lineTo(x,y); //画直线
bezierCurveTo(x1,y1,x2,y2,x,y); //画两个控制点的贝塞尔曲线
画线的步骤
beginPath();
closePath(), fill(),stroke() 等。
画圆
arc(x,y ,r,start,end,clockWise); //画圆或者环
x ,y 圆心
start end 弧度
r 半径
clockwise 顺时针 逆时针 true 为逆时针
画矩形
fillRect(x,y ,w,h); 画矩形
x,y 起始坐标,w ,h 宽高。等。
其他诸如:
ctx.strokeStyle fillStyle 设置画线 或填充的颜色。等修饰性的属性.
参考文档我引用的另一个文档。
分享到:
相关推荐
<canvas> 是一个新的 HTML 元素,这个元素在 HTML5 中被定义。这个元素通常可以被用来在 HTML 页面中通过 JavaScript 进行绘制图形、合成图像等等操作,也可以用来做一些动画。这个文档中有详细的canvas的应用实例,...
HTML5环境下Canvas入门, 在Chrome或FF环境下可以预览, 些例说明了Canvas下可以随意的进行画图, 我的例子主要以带圆角的矩形及渐变颜色为例子
《HTML 5 Canvas基础教程》从HTML5和JavaScript(以及jQuery)的基础知识讲起,全面介绍了HTML5Canvas的各种特性,包括渲染上下文、坐标系统、绘制图形、保存和恢复画布状态,以及变形、合成、处理图像和视频等,让...
html5 canvas 播放视频html5 canvas 播放视频
Html5-canvas之图片添加马赛克 Html5-canvas之图片添加马赛克
html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的星星特效html5 canvas飘洒的...
html5,canvas扇形菜单 html5,canvas扇形菜单 html5,canvas扇形菜单 html5,canvas扇形菜单 html5,canvas扇形菜单
资源名称:HTML5 Canvas基础教程内容简介:《HTML5 Canvas基础教程》从HTML5和Javascript(以及jQuery)的基础知识讲起,全面介绍了HTML5 Canvas的各种特性,包括渲染上下文、坐标系统、绘制图形、保存和恢复...
《HTML5 Canvas核心技术》内的实例代码
HTML5 Canvas核心技术源码技术代码、图形、动画与游戏开发。 Canvas开发、入门学习Canvas技术代码。 HTML5 Canvas核心技术源码技术代码、图形、动画与游戏开发。 Canvas开发、入门学习Canvas技术代码。 HTML5 Canvas...
html5 canvas 制作流程图 EaselJS html5 canvas 制作流程图 EaselJS
HTML5 Canvas 经典学习教程, HTML5 Canvas 经典学习教程-HTML5 Canvas Study,HTML5 Canvas Study,HTML5 Canvas Study
让IE兼容 HTML5的canvas标签 excanvas的文件
《HTML5 Canvas 开发详解》第二版pdf 版
HTML 5 CANVAS游戏开发实战HTML 5 CANVAS游戏开发实战HTML 5 CANVAS游戏开发实战
html5 canvas容器温度计特效 html5 canvas容器温度计特效
低版本HTML2canvas 前端开发 生成海报 截图等功能 1.该脚本允许您直接在用户浏览器上对网页或其部分进行“截图”。屏幕截图基于 DOM,因此可能不是 100% 准确到真实表示,因为它不会制作实际的屏幕截图,而是根据...
html5+canvas+js头像缩放裁剪
HTML5.Canvas HTML5.CanvasHTML5.Canvas HTML5.CanvasHTML5.CanvasHTML5.Canvas HTML5.CanvasHTML5.Canvas HTML5.Canvas
html5 canvas流动的瀑布动画特效 html5 canvas流动的瀑布动画特效