百度脑图这样的应用,使用SVG(而非HTMLDOM)的优势有哪些?


我想实现一个类似脑图的应用,并不需要复杂的矢量图形绘制,只需要一些框框来表示项目就可以了,我觉得这个需求使用HTML+CSS是可以实现的。但是由于初学,并不能看到潜在的问题,所以想问问百度脑图使用SVG是不是有些特殊的原因?

我想到的是SVG可能可以比较独立地保存起来,一幅图就是一个文件,而HTML的绘制就要麻烦一点。

先谢谢!

HTML svg html5

weizon 9 years, 8 months ago

SVG虽然是用于图形,但它是XML标准,这是它作为数据传递最重要的一点

第378号 answered 9 years, 8 months ago

SVG就是可以无极缩放,鼠标交互动作支持的好

超级无敌奖门人 answered 9 years, 8 months ago

SVG跨平台(软件)矢量,缩放只要该参数,你html+css没有浏览器了咋办?缩放用translate:scale么?

大家一起吃牢饭 answered 9 years, 8 months ago

其实说实话,我还挺好奇你怎么用html+css来实现的,希望能给个例子或者思路,谢谢!

我能想到的需要实现的功能
1. 可以拖动
2. 可以记录位置
3. 可以记录相关模块之间的关联关系,例如父子,兄弟节点

blueden answered 9 years, 8 months ago

HTML 是超文本链接语言,原本用于描述页面之间的关系,目前主要用于描述页面(page),从 html5 规范的语义标签就可以看出,html 不关心“图形”,而关心“文档”,也就是关注标题、段落、文章、文档之间的关联等问题,至于文档的显示效果,由CSS处理。

SVG 是可缩放矢量图形,本身就是一种对“图形”的描述方案。

两者都是 XML 在具体领域的应用,由于定位不同,规范所支持的标签、语义也不同。

从这样的角度看,题主的问题其实是关于“用来表达脑图的文件,到底应该是一种文档还是一种图形?”的问题。

这个问题嘛,我觉得见仁见智的了,因为计算机中的“脑图”到底应该是怎样理解,要看你如何理解你的业务。反正从百度的做法看来,百度认为脑图是一种图,所以他们选用了SVG。

自称天然呆 answered 9 years, 8 months ago

Your Answer