Canvas vs SVG用于图形图表?

时间:2011-12-02 08:32:14

标签: javascript html5 svg html5-canvas

我想创建能够构建思维导图的网络应用程序。 后端对我来说不是问题,但是前端是:我不确定使用哪种技术。

应该构建无限制的图表,其中每个节点都应该是可编辑的并包含文本。

3 个答案:

答案 0 :(得分:2)

SVG!无限可缩放,在现代浏览器(包括Firefox 4及更高版本)中得到很好的支持,并且可以很好地支持文本。

答案 1 :(得分:1)

我还会告诉您检查http://raphaeljs.com/让您的生活更轻松。

谈到动画时,很容易使用HTML5画布,但如果你需要复杂的动画或需要更多的控制和质量,SVG就是你的选择。

除了质量之外,HTML5画布中的其他缺点是在幕后它是一个像素操作,你不会为每个对象获取DOM,这意味着你不能通过ID调用它们或单独操作它们。每一个小小的改动都是重绘的。

另一方面,SVG提供DOM级别的控制并受webkits支持

答案 2 :(得分:0)

如果我必须在两者之间做出选择,我会说画布。

有一个相关的问题here会给你一个更全面的答案,但它得到了很大的支持,作为html5的一部分获得了动力,并且(如果它有所作为)有良好的移动支持。

然而,我也会说它们完全不同,没有什么可以阻止你使用它们,因为它们当然可以很好地协同工作。