Monday, October 4, 2010

HTML5 - Canvas

Canvas是HTML5的一个新元素。从06年起,就一直引起关注。站在开发者的角度,这是个相当有趣的改变。Canvas和js,Ajax,svg的结合,能将网站的性能提高很多。站在BSA的角度,HTML5技术本身是无法作为卖点的;更令人感兴趣的是,HTML5的Canvas究竟能给用户带来怎样的新体验?

作为HTML的一个新tag,canvas标签本身就是HTML5 的一个元素,可以像操作普通 HTML tag一样操作。开发人员可以将所有的代码整齐的写在一个文件里,降低了维护与更新的难度。它不依赖于外部插件、与浏览器渲染引擎结合、节约资源。虽然比起svg来是低级语言,也没有flash的事件维护,但是几乎可以肯定,在浏览器对canvas实现全面支持后,在Canvas可以实现的技术范围内,速度是要比其它技术快的。

也就是:资源+时间。

下面的链接显示了svg和canvas的下载速度比较:
http://www.ernestdelgado.com/gmaps/canvas/ddemo1.html

几个用canvas制作的游戏:
http://www.benjoffe.com/code/demos/canvascape/

http://www.nihilogic.dk/labs/mario/mario_large_music.htm

基于canvas的web作图工具:
http://canvaspaint.org/

http://mugtug.com/sketchpad/

鉴于Canvas只是一种低级语言,不能期望它能独立地成为图形处理的基础。但是基于HTML本身的特性,以及与js,svg的结合,Canvas可以成为实现新工具的手段。

No comments:

Post a Comment