html5- canvas(绘画形状)

一。理解canvas

1.首先理解canvas这东西就是一块布。在html代码里这样用

 <canvas id="canvas" width="150" height="150"></canvas>

具体怎么操作都是在JavaScript里面操作的。<canvas></canvas>必须要有结束标签。默认大小是300px*150px个像素。左上角是原点。

2.下面我们要在这块布上放点东西。要这样:

//获取这块画布
var canvas = document.getElementById(‘tutorial‘);
//获得操作他的能力
var ctx = canvas.getContext(‘2d‘);

二。绘制一个矩形

  canvas一共提供了3中现成的矩形:

//绘制一个填充的矩形
fillRect(x, y, width, height)
//绘制一个矩形的边框
strokeRect(x, y, width, height)
//清除指定矩形区域,让清除部分完全透明。
clearRect(x, y, width, height)

  下面我们把这三个矩形一起填出进去

function aa(){
      var canvas = document.getElementById(‘canvas‘);
      var ctx=canvas.getContext(‘2d‘);
      //在坐标是30,30的地方插入一个100*100的矩形。
      ctx.fillRect(30,30,100,100);
      ctx.clearRect(50,50,70,70);
      ctx.strokeRect(70,70,40,40);
}

效果是这样子:

fillRect()函数绘制了一个边长为100px的黑色正方形。clearRect()函数从正方形的中心开始擦除了一个70*70px的正方形,接着strokeRect()在清除区域内生成一个40*40的正方形边框。

三。绘制路径

1.  很多时候我们要画的形状不一定是非常标准的,所以要一段一段的画。这就要用到路径!用路径画图一般是这么个步骤:

(1)获取路径方法(告诉canvas,我要用路径画图啦)

        ctx.beginPath();

(2)把画笔移动到开始画图的地方。

        ctx.moveTo(75,50);

(3)画出你要的接下来的一些点的坐标。若是想着再画一个重复此步骤即可。

    ctx.beginPath();
    ctx.moveTo(100,75);
    ctx.lineTo(70,75);//第一笔把先移动到100,75
    ctx.lineTo(70,55);//再画到100.25
    ctx.lineTo(100,55);//...
    ctx.lineTo(100,75);//...

   //最后一部显示图像
    ctx.stroke();//stroke是画空心的。ctx.fill()画实心的   

效果:

2 .我们不但可以划线还可以画别的例如:画圆弧,画圆,二次贝塞尔曲三次贝塞尔曲线

时间: 2024-10-27 17:38:24

html5- canvas(绘画形状)的相关文章

html5 canvas绘画时钟

本示例使用HTML5的canvas标签和Javascript脚本,模拟显示了一个时钟, 请使用支持HTML5的浏览器预览效果: HTML部分: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial

HTML5 新元素、HTML5 Canvas

HTML5 新元素 自1999年以后HTML 4.01 已经改变了很多,今天,在HTML 4.01中的几个已经被废弃,这些元素在HTML5中已经被删除或重新定义. 为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储,网络工作者,等. <canvas> 新元素 标签 描述 <canvas> 标签定义图形,比如图表和其他图像.该标签基于 JavaSc

基于HTML5 Canvas和jQuery 的画图工具的实现

简介 HTML5 提供了强大的Canvas元素,使用Canvas并结合Javascript 可以实现一些非常强大的功能.本文就介绍一下基于HTML5 Canvas 的画图工具的实现.废话少说,先看成品: 该应用是遵循所见即所得(WYSIWYG, What you see is what you get)原则设计的,它具有以下功能: 1. 可以绘制自由曲线.直线.矩形框和文字: 2. 可以根据需要定义线段和矩形框的颜色和宽度: 3. 你可以需要字体的大小.颜色.字体: 4. 支持undo.redo

HTML5: HTML5 Canvas

ylbtech-HTML5: HTML5 Canvas 1.返回顶部 1. HTML5 Canvas <canvas> 标签定义图形,比如图表和其他图像,您必须使用脚本来绘制图形. 在画布上(Canvas)画一个红色矩形,渐变矩形,彩色矩形,和一些彩色的文字. 什么是 canvas? HTML5 <canvas> 元素用于图形的绘制,通过脚本 (通常是JavaScript)来完成. <canvas> 标签只是图形容器,您必须使用脚本来绘制图形. 你可以通过多种方法使用

html5 Canvas绘制图形入门详解

html5,这个应该就不需要多作介绍了,只要是开发人员应该都不会陌生.html5是「新兴」的网页技术标准,目前,除IE8及其以下版本的IE浏览器之外,几乎所有主流浏览器(FireFox.Chrome.Opera.Safari.IE9+)都已经开始支持html5了.除此之外,在移动浏览器市场上,众多的移动浏览器也纷纷展开关于「html5的支持能力以及性能表现」的军备竞赛.html作为革命性的网页技术标准,再加上众多浏览器厂商或组织的鼎力支持,可以想见,html5将会成为未来网页技术的领头羊. ht

使用HTML5 -Canvas追踪用户,Chrome隐身模式阵亡

中国的一些精准营销公司又要偷着乐了= =从之前追踪Cookie到后面追踪FlashCookie,某些商家总在永无止境的追踪用户行为甚至是隐私,将其转化为所谓的“商业价值”.我们被迫面临“世风日下.道德沦亡”之窘境,不过笔者后来又释怀了,反正在中国上网本来就没有隐私嘛.毕竟国家机器还在合法工作呢...... 话说回来,HTML5-Canvas追踪用户的核心原理其实就是一句话:在绘制canvas图片时,同样的canvas绘制代码,不同机器和浏览器绘制的图片特征是相同并且独一无二的,这样以来,提取最简

html5 canvas绘制圆形印章,以及与页面交互

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>HTML5 Canvas画印章</title> 6 <script type="text/javascript" src="../JQmain/jquery-2.2.0.min.js"></script> 7 &l

基于HTML5 Canvas实现的图片马赛克模糊特效

效果请点击下面网址: http://hovertree.com/texiao/html5/1.htm 一.开门见山受美国肖像画家Chuck Close的启发,此脚本通过使用HTML5 canvas元素把图像转换成像素形式,这基本上是一个为canvas imageData功能的简单演示. 此脚本现存于GitHub上,您可以在那里下载到脚本和示例.在GitHub上查看像素化资源 二.选项此方法接受一个对象数组,每个对象都拥有一组选项.resolution : 渲染像素间的像素距离,必须的.shape

HTML5 Canvas核心技术—图形、动画与游戏开发.pdf3

路径与子路径 在某一时刻,canvas之中只能有一条路径存在,Canvas规范称之为“当前路径”(current path),这条路径却可以包含很多子路径(subpath),子路径是由两个或者更多点组成的 context.beginPath(); context.rect(10,10,100,100); context.stroke(); context.beginPath(); //清除上次调用rect()方法所创建的路径 context.rect(50,50,100,100); contex

html5 canvas绘图-贝塞尔曲线

贝塞尔曲线(ezier curve)最迟是由法国物理学家与数学家paul de Casteljau发明的.它的广泛运用则要归功于法国工程师皮埃尔 贝塞尔 贝塞尔曲线期初被用在汽车车身的设计上.现在则多用于计算机图形系统中.例如Adobe Illustrator/Apple的Cocoa框架以及在Html5的canvas. 贝塞尔曲线分为两种:平方(quadratic)贝塞尔曲线及立方(cubic)贝塞尔曲线.平方贝塞尔曲线是一种二次曲线(second degree curve),意思就是说,它们是