HTML5的canvas元素以及随其而来的编程接口Canvas API应用前景极为广泛。简单地说,canvas元素能够在网页中创建一块矩形区域,这块矩形区域可以成为画布,这其中可以绘制各种图形。可别小看了这个画布,它能实现无限的可能性。接下来我们从最简单的部分开始,逐步认识Canvas的强大功能。

1.在页面中添加canvas元素:

默认情况下,Canvas所创建的矩形区域大小为宽300像素,高150像素,不过我们可以使用width和height属性来自定义画布的宽度和高度。

像素概念:从定义上来看,像素是指基本原色素及其灰度的基本编码。像素是构成数码影像的基本单元,通常以像素每英寸PPI(pixels per inch)为单位来表示影像分辨率的大小。

例如:一张JPG图片 其PPI(pixel per inch) 像素 =300 知道图片尺寸可以算出共多少像素
ppi=300 就意味着每英寸有300个像素 长为5cm 1inch约=2.54cm  故5cm=(1/2.54)*5 inch 宽为3.8cm 3.8cm=3.8/2.54 inch 这张相片就是约590.55*448.82像素

Ex:构造一个宽200像素,高100像素的画布,并设置实心的边框:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>我是标题</title>
</head> <body>
<canvas id="myCanvas" style="border:1px solid;"width="200" height="100"></canvas>
</body>
</html>

2.Canvas如何绘制图形:

 1.在HTML5页面中添加canvas元素,必须定义canvas元素的id属性以便我们以后的调用。

<canvas id="myCanvas" style="border:1px solid;" width="200" height="100"></canvas>//这里设置canvas 的id为myCanvas
    

   2.在JavaScript代码中使用document.getElementById方法来寻找我们的canvas。

var ctx=document.getElementById("myCanvas")//找到我们创建的canvas

   3.然后我们使用getContext方法来获取canvas 元素的上下文(context),目前在画布中支持2d作图,所以getContext的参数为2d,也许在以后会支持3d作图后,参数也许会有3d。

var context=c.getContext("2d");

   4.使用JavaScript来进行绘图。在以后我们会接触到下面的基础绘图方法:

context.fillStyle="red"//设置填充颜色

context.fillRect(x1,y1,x2,y2)//其中x1,y1为矩形左上坐标,x2,y2为矩形右下坐标

context.strokeStyle="blue"//设置划线颜色

context.strokeRect(x1,y1,x2,y2)//同上所述

EX:构造宽200像素,高100像素的画布,在画布中创建一个填充颜色为#FF00FF的矩形

<!doctype html>
<html>
<body>
<canvas id="myCanvas" style="border:1px solid;" width="200" height="100"></canvas>
<script type="text/javascript">
var c=document.getElementById("myCanvas");
var context=c.getContext("2d");
context.fillStyle="#FF00FF";
context.fillRect(50,25,100,50);
</script>
</body>
</html>

HTML5 画布canvas元素的更多相关文章

  1. HTML5画布(CANVAS)速查简表

    HTML5画布(CANVAS)速查简表 http://www.webhek.com/misc/html5-canvas-cheat-sheet/

  2. HTML5画布Canvas

    一.Canvas概念介绍 1.概念 Canvas : 画布 2.作用 : HTML5 Canvas 元素用于图形的绘制, 通过脚本(通常是JavaScript)来完成.它本身只是个图形容器,必须使用脚 ...

  3. 关于HTML5画布canvas的功能

    一.画布的使用 1.首先创建一个画布(canvas) <canvas id=”myCanvas” width=”200” height=”100” style=”border:1px solid ...

  4. HTML5 画布canvas

    SVG的<defs> <symbols> 元素用于预定义一个元素使其能够在SVG图像中重复使用 <svg xmlns="http://www.w3.org/20 ...

  5. 10款面向HTML5 画布(Canvas)的JavaScript库

    https://www-evget-com/article/2014/4/9/20799.html

  6. HTML5之canvas元素

    定义和用法 fillStyle 属性设置或返回用于填充绘画的颜色.渐变或模式. 默认值: #000000 JavaScript 语法: context.fillStyle=color|gradient ...

  7. 面向画布(Canvas)的JavaScript库

    面向画布(Canvas)的JavaScript库 总结 每个库各有特色,根据需求选择   学习要点 面向画布(Canvas)的JavaScript库 EaselJS 是一个封装了 HTML5 画布(C ...

  8. 【HTML5】Canvas画布

    什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...

  9. HTML5<canvas>标签:使用canvas元素在网页上绘制线条和圆(1)

    什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...

随机推荐

  1. 编写CLR存储过程中使用SqlDataRecord

    温习一下这些天学习的CLR编程,存储过程,函数. 编写CLR的存储过程,运行起来的效率,果然比普通的SQL语句,存储过程或是函数均高. 以后专案需求,或是执行效率较高的SQL,得写成CLR程序,再部署 ...

  2. 如何Windows分页控件中增加统计功能

    在我的博客里面,很多Winform程序里面都用到了分页处理,这样可以不管是在直接访问数据库的场景还是使用网络方式访问WCF服务获取数据,都能获得较好的效率,因此WInform程序里面的分页控件的使用是 ...

  3. 判断JS对象是否拥有某属性

    两种方式,但稍有区别 1.in 运算符  

  4. javascript常用判断写法

    js验证表单大全,用JS控制表单提交 ,javascript提交表单 目录:1:js 字符串长度限制.判断字符长度 .js限制输入.限制不能输入.textarea 长度限制 2.:js判断汉字.判断是 ...

  5. 15天玩转redis —— 第二篇 基础的字符串类型

    我们都知道redis是采用C语言开发,那么在C语言中表示string都是采用char[]数组的,然后你可能会想,那还不简单,当我执行如下命令,肯定是直 接塞给char[]数组的. 如果你真的这么想的话 ...

  6. CodeSnippet.info整体技术构架

    CodeSnippet.info整体架构 服务器端 Asp.NET MVC5 考察过MVC6,但是现在MVC6还不成熟,技术上不稳定,很多资料也比较少. 所以网站暂时使用MVC5.当然网站的大部分业务 ...

  7. WPS添加页码不是从首页开始

    A.页码从第二页开始 "插入"--"页码"--"格式"--不选"续前页"--"起始页码"设为0 &q ...

  8. Gym 101102C---Bored Judge(区间最大值)

    题目链接 http://codeforces.com/gym/101102/problem/C problem description Judge Bahosain was bored at ACM ...

  9. 由select * from table where 1=1中的1=1说开数据库

    众多网站都有select * from table where 1=1此类语句的介绍,并且,针对该类语句,讲得实在是让人越看越迷茫(一个抄袭一个的,简直不像话),不知道是在说什么,导致很多新手不得要领 ...

  10. 项目总结笔记系列 Maven Session2

    主题:Maven插件 1.三个生命周期. 2.猛然间,一回首,竟然发现.之前的maven插件报错的原因,不是download的问题.是没有连接上网.在HP公司连接外网,用eclipse,是需要配置代理 ...