• HTML5 Canvas
        简单的说就是js+html5可以自定义绘制任何图形
  • 认识Canvas元素
  1. <canvas id="canvas" width="500" height="500">
  2. <!-- 不支持canvas的浏览器,这里会显示~~ -->
  3. </canvas>
上面即是一个标准的Canvas的元素,暂时先当一个div去理解,只不过这个Canvas可以作图而已。
  • 认识2D渲染上下文
通过js去访问,这个js对象是你真正绘制图形的地方。
小提示:绘图使用js访问操作2D渲染上下文对象,最后通过Canvas这个元素展示出来,也就是说Canvas只是一个展示的作用!
  • 认识坐标系统
如何设定自定义图形在页面上的位置?使用坐标系统,坐标系统的概念同js的offsetTop,offsetLeft一模一样,就是以电脑屏幕最左上角的那个像素作为原点(0,0),横向是x轴为第一个0,纵向是y轴为第二个0。
  • 访问2D渲染上下文对象
上面三个知识点够用了,马上实例操作
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>认识Canvas</title>
  6. <body>
  7. <canvas id="canvas" width="500" height="500">
  8. <!-- 不支持canvas的浏览器,这里会显示~~ -->
  9. </canvas>
  10. </body>
  11. </html>
  12. <script>
  13. var canvas = document.getElementById('canvas');//获取canvas的dom元素
  14. var context = canvas.getContext('2d');//获得2d渲染上下文对象
  15. context.fillRect(0,0,800,800);//创建一个矩形,从左上角x轴0,y轴0的位置,绘制一个宽300,高200的矩形
  16. </script>
第14行很重要,获取2d对象,你可能会想到有没有3d,很抱歉,还没出来。
第15行fillRect方法绘制矩形用的,这里补充一下,关于颜色默认用的黑色填充内容,fillRect(x,y,width,height)。
小提示:假如Canvas的宽高数值比fillRect设置的数值小的话,那么fillRect的填充将会占满Canvas,溢出部分看不见的。就如同这里的Canvas宽高都是500像素,但是fillRect却是800像素,最终绘制出的只有Canvas当初设置的500像素的内容,溢出的300像素就不可见。
 
刷新页面你将可能到一个500像素的黑色色块,看起来效果应该不错吧?
好了,使用strokeRect替换fillRect,其他保持原样,再次刷新页面,看到了什么呢?动手试一试吧~
这两个函数参数都一样的,只是展示方式不一样~~
 
 
每天一点点,很多天就是很多点点~
 

Canvas基础认识的更多相关文章

  1. HTML5移动开发学习笔记之Canvas基础

    1.第一个Canvas程序 看的是HTML5移动开发即学即用这本书,首先学习Canvas基础,废话不多说,直接看第一个例子. 效果图为: 代码如下: <!DOCTYPE html> < ...

  2. canvas基础之旅

    canvas 主要使用2D rendering context  API 实现其功能和特效. canvas 一般浏览器都支持,但在ie9之前的是不支持的.(解决办法:添加IxplorerCanvas ...

  3. canvas 基础知识整理(二)

    html部分: <canvas id="myCanvas" width="800" height="800" ></can ...

  4. canvas 基础知识整理(一)

    canvas这个 HTML 元素是为了客户端矢量图形而设计的.它自己没有行为,但却把一个绘图 API 展现给客户端 JavaScript 以使脚本能够把想绘制的东西都绘制到一块画布上. html的基本 ...

  5. 《HTML5 CANVAS基础教程》读书笔记

    一.HTML5简介 1.HTML5新特性 1)结构元素:section,header,hgroup,footer,nav,article,aside, 2)内容元素:figure,figcaption ...

  6. canvas 基础知识

    canvas 基础 低版本的ie不支持html5,需要引入excanvas.js来让ie支持canvas. 检测支持canvas <canvas id="canvas" wi ...

  7. canvas基础语法

    前面的话 canvas顾名思义是定义在浏览器中的画布.它不仅是一个普通的元素,更是一个强大的编程工具.它的出现已然超过了web基于文档的设计初衷,将网页这一形态的应用推向了另一个高度.利用canvas ...

  8. canvas API ,通俗的canvas基础知识(一)

    在没学canvas的时候,觉得canvas是这么的神秘,这么的绚丽,这么的高深,用canvas做出来的效果是如此的炫酷,能做的事情如此的宽广,简直让我心生敬畏之心,时常感叹:我要是得此技能,必定要上天 ...

  9. canvas基础动画示例

    canvas基础动画示例 本文主要用最简单的例子,展示canvas动画效果是如何实现的 动画效果,是一个球绕着一点旋转 const canvas = document.getElementById(' ...

  10. canvas基础学习

    /** * Created by ty on 2016/7/11. * canvas 基础 */ window.onload = function() { var canvas = document. ...

随机推荐

  1. 萌新笔记——C++里创建 Trie字典树(中文词典)(三)(联想)

    萌新做词典第三篇,做得不好,还请指正,谢谢大佬! 今天把词典的联想做好了,也是比较low的,还改了之前的查询.遍历等代码.  Orz 一样地先放上运行结果: test1 ID : char : 件 w ...

  2. ubuntu下修改键位

    尴尬的背景: 服役5年的笔记本,最近键盘失灵,部分键位彻底失去响应.最蛋疼的是左右方向键都不能用了 ○| ̄|_ 解决方案是,通过xmodmap命令,用其他相对鸡肋些的键位替代方向键. 1 查看各个键位 ...

  3. 最新win7系统64位和32位系统Ghost装机稳定版下载

    系统来自转载:系统妈 一.主要更新:========================== * 更新了系统补丁和Office2007 SP2所有补丁 通过微软漏洞扫描* 更新QQ至7.1  官方正式版* ...

  4. H5页面微信分享和手Q分享设置

    RT: 一. 手Q分享: 如下代码所示:设置好 description,name,image,即可,唯一注意的是image最好是200*200,要不然过小不美观,过大加载太慢 <head> ...

  5. java.lang.String.getBytes(String charsetName)方法实例

    java.lang.String.getBytes(String charsetName) 方法编码将此String使用指定的字符集的字节序列,并将结果存储到一个新的字节数组. 声明 以下是java. ...

  6. MyBatis源码分析-IDEA新建MyBatis源码工程

    MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀的持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简 ...

  7. url中的特殊符号含义

    1. # 10年9月,twitter改版.一个显著变化,就是URL加入了"#!"符号.比如,改版前的用户主页网址为http://twitter.com/username改版后,就变 ...

  8. linux下EOF写法梳理

    在平时的运维工作中,我们经常会碰到这样一个场景:执行脚本的时候,需要往一个文件里自动输入N行内容.如果是少数的几行内容,还可以用echo追加方式,但如果是很多行,那么单纯用echo追加的方式就显得愚蠢 ...

  9. jBPM4.4 no jBPM DB schema: no JBPM4_EXECUTION table. Run the create.jbpm.schema target first in the install tool.

    jBPM4.4 no jBPM DB schema: no JBPM4_EXECUTION table. Run the create.jbpm.schema target first in the ...

  10. SQL函数汇总【精选篇】

    1.绝对值   SQL:select abs(-1) value  O:select abs(-1) value from dual  2.取整(大)   S:select ceiling(-1.00 ...