SVG——新一代Web设计及互动媒体的革新

SVG的诞生历史与SVG的今天明天

来源:SVG中国(Chinasvg.COM)

SVG诞生历史与今天和明天

  本篇文章介绍了SVG诞生背景历史、目前现状及未来发展。并简单介绍其特点:基于XML标准、可升级、由文本构成、灵活的文件格式、支持交互性和内嵌字体等。

 1 SVG的介绍

  SVG(Scalable Vector Graphics,可伸缩矢量图像)是W3C在2000年发布的一种开放的标准文本式矢量图形描述语言。使用SVG可以在网页上显示出各种各样的高质量的矢量图形,包括许多图像处理中常见的功能,如图形、文字、动画、颜色、滤镜效果等。最关键的是SVG完全用普通文本来描述。也就是说,这是一种专门为网络而设计的基于文本的图像格式。并且SVG基于XML(Extensible Markup Language),所以可扩展性很强,能够描述任意复杂的图像。
  SVG是一种用XML描述二维图形的语言。SVG允许矢量图形形状(即路径由直线和曲线组成)、图像和文本3种图形对象。图形对象可以编组、风格化、变换,以及组合进先前呈递的对象。特性设置包括嵌套的变换、剪辑的路径、掩饰、滤波效果和模板对象。
  可以交互和动态地进行SVG画图。可以定义动画,并用声明方式(即将SVG动画元素嵌入SVG内容)或通过脚本触发。通过增加能访问SVG文本档对象模块(DOM,Document Object Model)的脚本语言,利用DOM提供的对所有元素、属性和特征的访问能力,可以实现更复杂的SVG应用。丰富的事件处理操作如OnMouseOver(鼠标移过)和OnClick(鼠标点击)可以分配给任何SVG图形对象。由于它的兼容性和其他Web标准的杠杆作用,象涉及XHTML和SVG元素脚本这样的特性可以在同一Web页内同时完成。

2 SVG的诞生历史

  SVG的历史最早可以追溯到1998年4月,W3C联盟(World Wide Web Consortium)先后收到了两个关于新的图形格式的提案,即Adobe、IBM、SUN等公司联合制定的PGML(Precision Graphics Markup Language,精确图形标记语言)和微软、 Macromedia等公司提交的类似矢量图形标准VML(Vector Markup Language,向量标记语言)。虽然PGML和VML都是使用CSS的XML向量语言,但二者却是相互竞争的对手。从功能上分析,他们的区别是PGML比较适合专业设计和出版,而VML适合普通的矢量图形应用。采用哪一个作为通用矢量图形标准是一件十分困难的事情,为了更好地促进XML向量图形的发展,W3C决定在融合两者优点的基础上,开发一种新的语言即SVG。W3C期望SVG这种基于开放标准的可扩展语言,能够满足Web开发者对动态、可缩放和平台无关的Web内容表现和交互手段日益增长的需求。
  根据W3C官方网站的介绍,SVG第一个草案出台于1999年2月。2000年8月,W3C组织正式发布了SVG 1.0规范。2003年1月14日,W3C组织发布了SVG 1.1规范。目前,SVG最新版本是2005年4月发布的SVG 1.2草案。

3 SVG的今天与明天

  而SVG出现后相当长的时间里并不"火",究其原因主要有两点:
  3.1 SVG最大的问题是没有完全支持SVG的浏览器出现。
  主要问题是SVG本地运行环境的下厂家支持程度,SVG作为一个开放的通用矢量图形标准,各大软件厂商只考虑自身利益,不愿在其中投入过多资源开发相应的支持技术与产品。作为市场上占有率最高的Internet Explorer,微软一直没有兑现支持SVG,而力推自己的VML。
  3.2 SVG与Flash、VML的竞争。
  SVG面临的另一个问题是如何和已经占有重要市场份额的矢量图形格式Flash竞争的问题。
  在2005年之前力推SVG技术的最大的商业公司非Adobe所属,并且该出版巨头对svg技术发展提供了非常重要的贡献。Adobe看中svg的优势,并推出在线浏览"Adobe SVG Viewer" 插件以支持显示svg,而这样做无非就是看中其未来的发展前景及巨大的商业价值。但"Adobe SVG Viewer"毕竟只是一种过渡性的软件,没有主流浏览器内置支持是无法普及SVG技术的,更无法谈起SVG在的商业价值。进入2005年,Adobe收购了Macromedia,并且开始淡化"Adobe SVG Viewer"的支援,就像wwwtiger提到的一样,这些都是出于其商业目的。
  Flash背后是Adobe,VML背后的是微软。这些是企业利益的博弈,他们都寄望自己的格式占领主流以最大化自己的企业利益,而这些直接影响着SVG的发展速度。

  不过,近年来SVG的普及情况可以用"逐步升温"来形容。
  仔细浏览W3C组织的官方网站,你会发现2000年8月发布的SVG 1.0规范是候选推荐标准(Candidate Recommendation),而2003年4月发布的SVG 1.1规范变成了推荐标准(Recommendation),细微的差别说明了SVG地位的变化。另外,Adobe、微软、IBM等业内知名软件厂商正逐步加大对SVG的支持力度,各种浏览器端SVG插件纷纷亮相,众多专业矢量绘图工具也开始支持SVG标准。除了官方和厂家的支持外,基于SVG的Web图形应用程序如雨后春笋般的出现,SVG的应用范围也从原来单一的地理信息系统领域(Web GIS)向其他领域扩展。比如:
  著名的 SVG 项目包括 Mozilla SVG Project,KDE 的 ksvg,以及 Amaya 等。
  Mozilla Firefox自版本 1.5 发行后,即开始支援 SVG 格式的显示了。
  基于 Java 的 SVG 项目主要有 Batik SVG Toolkit 等。
  Opera 支持SVG显示……
  另外Microsoft也计划在Internet Explorer 8.0支持SVG,当解决了这个SVG发展最大的障碍——不用插件,浏览器内置支持浏览SVG时,SVG的普及以及更多领域的运用时代也就到来了,这个日子的到来会比我们想像得快。我们有理由相信,SVG的明天会更好。

(THE END)

 

将要更新