都是2D作图,svg是矢量图,canvas是位图,canvas是逐像素进行渲染的,适合游戏.
-
svg缩放不影响显示,svg对象的属性发生变化,那么浏览器能够自动重现图形。
canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括任何或许已被图形覆盖的对象 -
svg 1\不依赖分辨率 2\支持事件处理器 3\最适合带有大型渲染区域的应用程序(比如谷歌地图)4\复杂度高会减慢渲染速度(任何过度使用 DOM 的应用都不快)
canvas 1\依赖分辨率 2\不支持事件处理器 3\弱的文本渲染能力 4\能够以 .png 或 .jpg 格式保存结果图像 5\最适合图像密集型的游戏,其中的许多对象会被频繁重绘