SVG与HTML5的canvas各有什么

北京湿疹医院在哪 http://news.39.net/bjzkhbzy/210702/9134103.html

Canvas和SVG是HTML5中主要的2D图形技术,前者提供画布标签和绘制API,后者是一整套独立的矢量图形语言,成为W3C标准已经有十多年(.1至今)

简单来说Canvas是使用JavaScript程序绘图(动态生成),SVG是使用XML文档描述来绘图。从这点来看:SVG更适合用来做动态交互,而且SVG绘图很容易编辑,只需要增加或移除相应的元素就可以了。

Canvas技术较新,从很小众发展到广泛接受,注重栅格图像处理,SVG则历史悠久,很早就成为国际标准,复杂,发展缓慢(AdobeSVGViewer近十年没有大的更新)同时SVG是基于矢量的,所有它能够很好的处理图形大小的改变。

Canvas是基于位图的图像,它不能够改变大小,只能缩放显示;所以说Canvas更适合用来实现类似于Flash能做的事情(当然现在Canvas与Flash相比还有一些不够完善的地方)。

canvas和svg都是HTML5推荐使用的图形技术,Canvas基于像素,提供2D绘制函数,是一种HTML元素类型,依赖于HTML,只能通过脚本绘制图形。

SVG为矢量,提供一系列图形元素,在SVG中,每个被绘制的图形均被视为对象。如果SVG对象的属性发生变化,那么浏览器能够自动重现图形。

对于画在Canvas上的部件,你需要处理重绘。一旦图形被绘制完成,它就不会继续得到浏览器的


转载请注明:http://www.aierlanlan.com/rzfs/1665.html