2011-12-02 63 views
-1

我想創建web應用程序,這將能夠建立思維導圖。 後端對我來說不是問題,但前端是:我不知道使用哪種技術。Canvas vs SVG for graph-like diagrams?

應用程序應構建無限制的圖形,其中每個節點應該可編輯幷包含文本。

回答

2

SVG!無限可縮放,在現代瀏覽器(包括Firefox 4及更高版本)中得到很好的支持,並且可以很好地處理文本。

+0

也webkits支持,它是很好的支持移動設備上,並呈現非常好。矢量ftw! – gthmb

+0

儘管使用SVG庫直接編寫SVG輸出是一個巨大的痛苦! – gthmb

+0

這不是100%正確,SVG在大多數Android設備上都不可用。版本2.2及更早版本。所以Canvas現在不幸是更好的選擇。 –

0

如果我不得不在兩者之間進行選擇,我會說畫布。

有一個相關的問題here這將給你一個更全面的答案,但它得到了很大的支持,作爲html5的一部分獲得動力,並且(如果它有所作爲)具有良好的移動支持。

但是我也會說他們很不一樣,沒有什麼可以阻止你使用他們,因爲他們當然可以一起工作。

1

我也會告訴你檢查http://raphaeljs.com/讓你的生活更輕鬆。

當談到動畫時,它傾向於沿着HTML5畫布,但如果您的需要是複雜的動畫或需要更多的控制和質量,SVG是要走的路。

除了質量之外,HTML5畫布中的其他缺點是幕後它是一個像素操作,並且您不會爲每個對象獲取DOM,這意味着您無法通過ID調用它們或單獨操作它們。每一個小改變都是重繪。在另一方面

SVG將控制權的DOM水平和