[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> 标记和 ...
随机推荐
- 解决airserver在Windows下安装失败的问题
airserver 可以将iphone 实时投影到mac 和 pc.在mac上安装非常简单.但是在Windows上安装时会有很多问题.之前我电脑安装很快就完成了(因为我之前已经在不知情的前提先事先装过 ...
- tt程序分析(一)
首先是loginactivity login成功以后,跳转到mainActivity. mainActivity中有四个fragment , 聊天 fragment_chat 通讯录 ...
- 浏览器缓存(Egret项目实例分析)
参考文章: 浏览器缓存机制:http://web.jobbole.com/82997/ 浏览器缓存机制:http://www.cnblogs.com/skynet/archive/2012/11/28 ...
- isKindOfClass,isMemberOfClass使用备忘
isMemberOfClass 判断是否是属于这类的实例isKindOfClass 判断是否是这个类或者这个类的子类的实例 if ([teacher isKindOfClass:[Teacher cl ...
- laravel无法显示路由界面
安装完laravel项目后,开启了重写,/app/storage也设置好了权限,但是始终无法显示出页面,并出现: "Whoops, looks like something went wro ...
- C缺陷与陷阱----读书笔记---第一章
第一章:词法陷阱 编译器中负责将程序分解为一个一个符号的部分,一般称为“词法分析器”.例如,对于语句: if ( x == big ) big = x ; 它的第一个符号是C语言关键字if,紧接着下一 ...
- 小偷网站工具--Teleport Ultra
可以克隆别人网站的工具 http://jingyan.baidu.com/article/219f4bf7dce58bde442d3836.html
- matlab find函数
find函数用来获取向量或矩阵中非0元素的索引 假设X是行向量,则find(X)返回的是一个行向量:X'为列向量,find(X')返回的是一个列向量. 看一个例子:A是一个行向量,B是一个列向量,将B ...
- Selenium2+Python:Webdriver API速记手册
由于web自动化常常需要控制浏览器行为和操作页面元素,相关函数又比较多,于是再此记下一份Webdriver API查阅文档以备不时之需. 参考:虫师<Selenium2自动化测试实战>,和 ...
- 用python实现模拟登录人人网
用python实现模拟登录人人网 字数4068 阅读1762 评论19 喜欢46 我决定从头说起.懂的人可以快速略过前面理论看最后几张图. web基础知识 从OSI参考模型(从低到高:物理层,数据链路 ...