[html5] 学习笔记-Canvas标签的使用
Canvas通过JavaScript来绘制2D图形。Canvas是逐像素渲染的。在Canvas中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括任何已被图形覆盖的对象。
1、Canvas标签
html5中<canvas>元素用于图形的绘制,通过脚本(通常是JavaScript)来完成
<canvas>标签只是图形容器
可以通过多种方法使用Canvas绘制路径、盒、圆、字符以及添加图像
1.1 直接在html5中创建,这种方式采用得比较少
<DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> .canvas{ background-color: aqua; } </style> </head> <body> <canvas class="canvas" id="canvas1" width="200px" height="200px"></canvas> </body> </html>
1.2 通过脚本创建
html文件:
<DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <script src="app.js"></script> <body> </body> </html>
其中使用到的app.js:
var CANVAS_WIDTH = 200, CANVAS_HEIGHT=200; window.onload = function(){ createCanvas(); } function createCanvas(){ document.body.innerHTML = "<canvas id=\"mycanvas\" width = \""+CANVAS_WIDTH+"\" height = \""+CANVAS_HEIGHT+"\"></canvas>" }
2、绘制图形
API的地址:https://developer.mozilla.org/zh-CN/ 进入后选择WEB平台的Web API & DOM
<DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <script src="app.js"></script> <body> </body> </html>
其中的app.js:
var CANVAS_WIDTH = 500, CANVAS_HEIGHT=500; var mycanvas,context; window.onload = function(){ createCanvas(); drawRect(); } function createCanvas(){ document.body.innerHTML = "<canvas id=\"mycanvas\" width = \""+CANVAS_WIDTH+"\" height = \""+CANVAS_HEIGHT+"\"></canvas>" mycanvas = document.getElementById("mycanvas"); context = mycanvas.getContext("2d"); } function drawRect(){ context.fillStyle="#ff0000"; context.translate(200,200); context.rotate(45); context.scale(2,0.5); context.fillRect(0,0,200,200); }
3、绘制图片
将app.js中drawRect()的内容替换成以下即可:
var img = new Image(); img.onload = function(){ context.drawImage(img,0,0); } img.src="1.jpg";
[html5] 学习笔记-Canvas标签的使用的更多相关文章
- [html5] 学习笔记-Canvas应用
通过使用HTML5游戏开发的引擎CreatJS,创建HTML5 Canvas上的更好交互. 1.认识CreateJS CreateJS是一个外部库,用它可以比Canvas更方便的绘制图形. 官网:ht ...
- [html5] 学习笔记-Canvas 绘制渐变图形与绘制变形图形
在 HTML5 中,使用 Canvas API 绘制图形的知识,可以对绘制图形进行处理,包含使用 Canvas API 绘制渐变图形,使用 Canvas API 的坐标轴变换处理功能绘制变形图形.其中 ...
- Html5学习笔记1 元素 标签 属性
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- HTML5学习笔记之表格标签
HTML5学习笔记之表格标签 其他HTML5相关文章 HTML5学习笔记之HTML5基本介绍 HTML5学习笔记之基础标签 HTML5学习笔记之表格标签 HTML5学习笔记之表单标签 HTML5学习笔 ...
- html5学习笔记一
HTML5学习笔记 <video>标记:定义视频,Ogg.MPEG4.WebM三种格式 <video src=”movie.ogg” controls=”controls”> ...
- HTML5学习总结——canvas绘制象棋(canvas绘图)
一.HTML5学习总结——canvas绘制象棋 1.第一次:canvas绘制象棋(笨方法)示例代码: <!DOCTYPE html> <html> <head> & ...
- HTML5 学习笔记(一)——HTML5概要与新增标签
目录 一.HTML5概要 1.1.为什么需要HTML5 1.2.什么是HTML5 1.3.HTML5现状及浏览器支持 1.4.HTML5特性 1.5.HTML5优点与缺点 1.5.1.优点 1.5.2 ...
- HTML5 学习笔记--------》HTML5概要与新增标签!
一.HTML5概要 1.1.为什么需要HTML5 HTML4陈旧不能满足日益发展的互联网需要,特别是移动互联网.为了增强浏览器功能Flash被广泛使用,但安全与稳定堪忧,不适合在移动端使用(耗电. ...
- HTML5 学习笔记(四)——canvas绘图、WebGL、SVG
一.Canvas canvas是HTML5中新增一个HTML5标签与操作canvas的javascript API,它可以实现在网页中完成动态的2D与3D图像技术.<canvas> 标记和 ...
随机推荐
- mssql数据库syscolumns表中xtype列
xtype 类型34 image35 text36 uniqueidentifier48 tinyint52 smallint56 int58 smalldatetime59 real60 mo ...
- Java笔记(二)
10. public protected default private 同一个类中 √ √ √ √ 同一个包中 √ √ √ 子类 √ √ 不同包中 √ 11. 线程: s ...
- [Android]SDK安装
安装Android环境时,出现的问题 //在国内安装Android环境时,经常会因为Google服务器的原因,出现链接失败的问题. Failed to fetch URL http://dl-ssl. ...
- iOS探究UITableView的内部代码,仿UITableView自定义
大家都知道UITableView,最经典在于循环利用,这里我自己模仿UITableView循环利用,写了一套自己的TableView实现方案,希望大家看了我的文章,循环利用思想有显著提升. 研究UIT ...
- jQuery中$.get、$.post、$.getJSON和$.ajax的用法
以下是本人原创,如若转载和使用请注明转载地址.本博客信息切勿用于商业,可以个人使用,若喜欢我的博客,请关注我,谢谢!博客地址 一.jQuery中调用ajax的4种方法:$.get.$.post.$ge ...
- FreeRTOS基础以及UIP之协程--C语言剑走偏锋
在FreeRTOS中和UIP中,都使用到了一种C语言实现的多任务计数,专业的定义叫做协程(coroutine),顾名思义,这是一种协作的例程, 跟具有操作系统概念的线程不一样,协程是在用户空间利用程序 ...
- css3动画-transition
当css属性改变的时候,控制animation的速度,让属性的变化发生在一段时间之内,而不是立即生效. 语法 transition: <property> <duration> ...
- iOS开发UITableView基本使用方法总结 分类: ios技术 2015-04-03 17:51 68人阅读 评论(0) 收藏
本文为大家呈现了iOS开发中UITableView基本使用方法总结.首先,Controller需要实现两个delegate ,分别是UITableViewDelegate 和UITableViewDa ...
- Cocos2d-x 的“HelloWorld” 深入分析
本节所用Cocos2d-x版本:cocos2d-1.0.1-x-0.12.0 不能免俗,一切都从“HelloWorld!”开始.打开HelloWorld工程,里面有两个文件目录Classes和win3 ...
- UE4上传图片到服务器
客户端代码: void AHttpTestCharacter::MyHttpCall(FString Url){ // TexturePath contains the local file full ...