SVG和VML區別

SVG和VML區別雜談

不少組織一直在作這兩種動態矢量語言的統一工做,SVG和VML的初衷不同,SVG是爲了集大成,VML倒是爲了方便Word向Web的遷移,因此相對於VML的傻瓜和方便,SVG簡直就瘋狂的強調其的可擴展性....web

一個簡單的例子,一條直線,若是要加一個箭頭,VML裏面直接在stroke裏面添加一個屬性startarrow或者endarrow就搞定了!
能夠添加包括block,classic,diamond,oval,open,chevron,doublechevron這麼多種的箭頭,圓形的,鑽石型的,箭頭型的。咱們基本用得着的都有。何其的方便!雖然當時沒有體會,知道有一天看見SVG的噁心作法:瀏覽器

SVG,則要先定義一個marker標記,裏面去畫出箭頭的形狀,而後再連接到直線上。
更噁心的是,由於默認只有順着線條切線方向的箭頭,因此若是起始端須要箭頭,使用固定角度是不行的,只有重畫一個反方向的箭頭,再連接過去....
這些我也就忍了,最後費了老大勁也算是搞定了,最後的最後,我突發奇想,想更改一下線條的顏色,這在VML中固然很容易,箭頭的顏色也跟着變化了,結果SVG中很是的崩潰,竟然箭頭至今只能提供黑色(bugs.launchpad.net/inkscape/+bug/165865).....
雖然有一個更加噁心的hack,雖然這個bug已經上報到SVG標準裏面,而且優先級挺高,可要實現估計得些時日。.net

作這個東東也有些時日了,從最初就想作得完善一些,若是質量可以達到產品級別就最好了,感受越鑽得深,二者的區別就越多,雖然不能武斷的評論誰好誰劣,但總以爲SVG爲了可擴展,犧牲了太多太多的方便性。設計

多比圖形控件出現簡化了的這種開發難度,它是一款基於Web的矢量圖形控件,可以檢測瀏覽器類型,自動選擇VML或SVG方案進行作圖, 相似於網頁上的Visio控件,是目前國內外最佳的基於web矢量圖解決方案,能夠用於電力、化工、煤炭、工控組態軟件、仿真、地理信息系統、工做流、複雜報表 工業SCADA系統、ERP流程設計系統圖形管理、圖形拓撲分析、GIS地理信息系統系統工程製圖等領域。開發

相關文章
相關標籤/搜索