Canvas - Web API
<canvas>
是 HTML5 新增的元素,可用于通过使用JavaScript中的脚本来绘制图形。例如,它可以用于绘制图形,制作照片,创建动画,甚至可以进行实时视频处理或渲染。
Mozilla 程序从 Gecko 1.8 (Firefox 1.5) 开始支持 <canvas>
。它首先是由 Apple 引入的,用于 OS X Dashboard 和 Safari。Internet Explorer 从IE9开始<canvas>
,更旧版本的IE可以引入 Google 的 Explorer Canvas 项目中的脚本来获得<canvas>
支持。Chrome和Opera 9+ 也支持 <canvas>
。
WebGL也使用<canvas>元素在网页上绘制硬件加速的3D图形。
示例
这只是一个使用 CanvasRenderingContext2D.fillRect()
方法简单的代码片段。
HTML
- <canvas id="canvas"></canvas>
JavaScript
- var canvas = document.getElementById('canvas');
- var ctx = canvas.getContext('2d');
- ctx.fillStyle = 'green';
- ctx.fillRect(10, 10, 100, 100);
编辑下面的代码,查看画布的变化:
参考
与 WebGLRenderingContext
有关的接口请参考 WebGL.
教程与指导
- Canvas 教程
- 包括了<canvas>的基本用法与高级功能的综合性教程。
- 代码片段: Canvas
- 一些面向开发者的 <canvas> 代码片段。
- 光线追踪Demo
- 运用canvas制作的光线追踪动画示例。
- 在canvas上绘制DOM对象
- 如何在canvas上绘制DOM内容,如HTML元素。
- 使用canvas绘制图形
- 结合
<video>
和<canvas>
来实现实时操作视频数据。
资源
通用
库
- Fabric.js 具有SVG解析功能的开源canvas库
- Kinetic.js 专注于桌面与移动应用中的交互操作的开源canvas库
- Paper.js 运行于HTML5 Canvas上的开源矢量图形脚本框架
- Origami.js 开源的轻量的canvas库
- libCanvas 强大轻量的canvas框架
- Processing.js 用于处理可视化语言
- PlayCanvas 一个开源的游戏引擎
- Pixi.js 一个开源的游戏引擎
- PlotKit 图表库
- Rekapi 关键帧动画库
- PhiloGL 用于数据可视化,创意编程和游戏开发的WebGL框架
- JavaScript InfoVis Toolkit 创建交互式的2D Canvas数据可视化
- EaselJS 类Flash API的canvas库
- Scrawl-canvas 用来创建2d图形的开源库
- heatmap.js 基于 heatmaps 的 canvas 开源库
Canvas - Web API的更多相关文章
- Html5 学习系列(五)Canvas绘图API快速入门(1)
引言:Canvas绘图API快速入门 在接触HTML5的初学者包括我都在很多地方见到非常炫的一些页面,甚至好多学习HTML5的开发者都是冲着Web端的页游去的,那么HTML5那么绚丽的页面效果以及游戏 ...
- 引言:Canvas绘图API快速入门
引言:Canvas绘图API快速入门 在接触HTML5的初学者包括我都在很多地方见到非常炫的一些页面,甚至好多学习HTML5的开发者都是冲着Web端的页游去的,那么HTML5那么绚丽的页面效果以及游戏 ...
- [JavaScript]为JS处理二进制数据提供可能性的WEB API
写这篇博客的起源是在div.io上的一篇文章<你所不知道的JavaScript数组>by 小胡子哥下的评论中的讨论. 因为随着XHR2和现代浏览器的普及,在浏览器当中处理二进制不再向过去那 ...
- web API简介(一):API,Ajax和Fetch
概述 今天逛MDN,无意中看到了web API简介,觉得挺有意思的,就认真读了一下. 下面是我在读的时候对感兴趣的东西的总结,供自己开发时参考,相信对其他人也有用. 什么是API API (Appli ...
- 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用
由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...
- bootstrap + requireJS+ director+ knockout + web API = 一个时髦的单页程序
也许单页程序(Single Page Application)并不是什么时髦的玩意,像Gmail在很早之前就已经在使用这种模式.通常的说法是它通过避免页面刷新大大提高了网站的响应性,像操作桌面应用程序 ...
- Hello Web API系列教程——Web API与国际化
软件国际化是在软件设计和文档开发过程中,使得功能和代码设计能处理多种语言和文化习俗,在创建不同语言版本时,不需要重新设计源程序代码的软件工程方法.这在很多成熟的软件开发平台中非常常见.对于.net开发 ...
- ASP.NET Web API 跨域访问(CORS)
一.客户端用JSONP请求数据 如果你想用JSONP来获得跨域的数据,WebAPI本身是不支持javascript的callback的,它返回的JSON是这样的: {"YourSignatu ...
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...
随机推荐
- 关于Springboot中dubbo整合注意的误区(不对之处请指出)
这是我的客户端配置! 这是生产的配置, 首先注意一下 scan 我之前尝试这样的客户端配置 然后 果断客户端不能注册接口 @Reference(version="1.0") ...
- 关于python代码是编译执行还是解释执行
Python 是编译型语言还是解释型语言?回答这个问题前,应该先弄清楚什么是编译型语言,什么是解释型语言. 所谓编译执行就是源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下 ...
- git原理:引用规格
引用规格(refspec):就是在 .git/config 里面那个配置远程仓库的东西 [remote "origin"]url = https://github.com/test ...
- easyui-combobox 中多选的默认值设置、获取多选值及JS包含字符串、删除字符串
1.项目中使用到combobox的多选值及相关操作,不多说,直接上代码: <input id="education" name="education" c ...
- 使用PLSQL Developer和DbVisualizer、SQLDBx查询oracle数据库时出现乱码
使用PLSQL Developer和DbVisualizer查询oracle数据库时,出现查询数据中文乱码情况. 查看了一下数据库编码格式select * from v$nls_parameters; ...
- iOS 统计项目代码行数
最近去面试 对面的"他" 问我其中一个问题 是 "你的项目代码量是多少?" 当时的确有点蒙圈, 我可以从整个项目打包的角度考虑项目大小,我还真没想过到底我的项目 ...
- SpringBoot编辑代码时不重启服务
@SpringBootApplication @ComponentScan("com.sicdt") public class SicSignWebApplication { pu ...
- iOS获取设备IP地址
项目用到要获取iOS设备的IP地址,有2种方法: 1)第一种比较简单,但是只有当你的设备连接到WIFI时才能获取到IP地址,倘若你的设备用的是流量,那就不行.代码如下: #import <ifa ...
- [SCOI2005]超级格雷码
题目 BZOJ 洛谷 做法 爆搜真有意思 满足不重复且异或后仅一位为\(1\) 利用奇偶性交叉搜索(仅改变一位) My complete code #include<bits/stdc++.h& ...
- jQuery带闹钟的数字时钟
在线演示 本地下载