一)canvas标签

  属性:

    1、width 和 height 控制canvas宽高;

    2、style添加基本样式

    3、class,id属性

    4、标签内添加一行文本,主要用于浏览器不支持canvas标签时显示

<canvas id="myCanvas" width="1020px" height="600px" class="myCanvas">
你的浏览器不支持Canvas
</canvas>

  为canvas添加3px边框后 画布如图

  

二)文档对象模型

  将<canvas>放入web页面时,第一件事情就是,看整个页面是否已经加载,并且开始操作之前是否所有HTML元素都已展现。通过 addEventListener() 方法监听 window 的 load 事件。

  

window.addEventListener('load', eventWindowLoaded, false)

function eventWindowLoaded () {
canvasApp() //包含整个canvas应用程序
}

三)引用canvas元素

  

function canvasApp () {
var myCanvas = document.getElementById('myCanvas');
}

四)检测浏览器支持情况  

  调用 getContext() 方法检测浏览器是否支持canvas。

function canvasApp () {
var myCanvas = document.getElementById('myCanvas'); if(!myCanvas || !myCanvas.getContext){
return;
} //绘制开始
}

五)获取2D环境

function canvasApp () {
var myCanvas = document.getElementById('myCanvas'); if(!myCanvas || !myCanvas.getContext){
return;
} var ctx = myCanvas.getContext('2d');
//......
}

六)实例小试 -- 红色矩形

function canvasApp () {
var myCanvas = document.getElementById('myCanvas'); if(!myCanvas || !myCanvas.getContext){
return;
} var ctx = myCanvas.getContext('2d');
ctx.fillStyle = '#f36';
ctx.fillRect(10,10,200,150);
}

  效果图:

  

七)坐标系

  canvas坐标系和数学里的坐标系稍有差别,canvas坐标系如下图所示

  

  

最新文章

  1. 第二篇.Bootstrap起步
  2. PHP Web实时消息后台服务器推送技术---GoEasy
  3. 浅谈lua
  4. Tcl Tk Introduction
  5. HDU 1003 基础dp 最大连续序列和
  6. [转]建立swap分区
  7. spring tranaction 事务入门
  8. JavaScript中的作用域和闭包
  9. C#中的三种 加密解密
  10. Linux 环境下 fork 函数和 exec 函数族的使用
  11. [HMLY]2.CocoaPods详解----进阶
  12. 如何用C语言封装 C++的类,在 C里面使用
  13. 1st 四则运算题目生成程序
  14. Webpack 2 视频教程 014 - 深入理解 Webpack 2 中的 loader
  15. 谷歌浏览器的各个版本对应的webdriver(chromedrive)-超级详细
  16. 使用 ASP.NET Core MVC 创建 Web API(四)
  17. 消息中间件之一:RabbitMQ
  18. python3 词法拆分
  19. elastic search query &amp; filter &amp; query_string
  20. Codeforces 1089K - King Kog&#39;s Reception - [线段树][2018-2019 ICPC, NEERC, Northern Eurasia Finals Problem K]

热门文章

  1. springmvc h5上传图片
  2. Swift4 函数, 元组, 运算符
  3. bzoj 1606: [Usaco2008 Dec]Hay For Sale 购买干草【01背包】
  4. Tree POJ - 174
  5. 题解报告:NYOJ 题目139 我排第几个(康托展开)
  6. Android 线程池系列教程(4) 启动线程池中的线程和中止池中线程
  7. 转-Mac下Apache Tomcat安装配置
  8. gcc 编译 c++ 程序(转载)
  9. 程序猿工具——svn
  10. java之数据处理,小数点保留位数