可升级矢量图型(Scalable Vector Graphics,SVG)是基于可扩展标记语言XML,用于描述二维矢量图型的一种图形格式。SVG由W3C制定,是一个开放标准。
本篇文章是来自维基百科(Wikipedia.COM)对SVG的解释:SVG是可升级矢量图形,它是是基于可扩展标记语言XML用于描述二维矢量图型的一种图形格式。SVG由W3C制定,是一个开放标准。
SVG概述
SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式。SVG图形格式具有以下优点:
- 图像文件可读,易于修改和编辑
- 与现有技术可以互动融合。例如,SVG技术本身的动态部分(包括时序控制和动画)就是基于SMIL标准。另外,SVG文件还可嵌入JavaScript(严格的说应该是ECMAScript)脚本来控制SVG对象
- SVG图形格式可以方便的建立文字索引,从而实现基于内容的图像搜索
- SVG图形格式支持多种滤镜和特殊效果,在不改变图像内容的前提下可以实现位图格式中类似文字阴影的效果
- SVG图形格式可以用来动态生成图形。例如,可用SVG动态生成具有交互功能的地图,嵌入网页中,并显示给终端用户
SVG面临的主要问题一个是如何和已经占有重要市场份额的矢量图形格式Flash如何竞争的问题,另一个问题就是SVG的本地运行环境的下厂家支持程度。
SVG Basic
SVG Basic又称SVGB,是英语"Scalable Vector Graphics, Basic Profile"的简写。可以翻译为"可缩放的矢量图型标准的基本版"。它是矢量图型标准——SVG的一个子集,而主要目标是为掌上电脑等高端移动设备提供矢量图形显示格式。
SVG Tiny
SVG Tiny又称SVGT,是英语"Scalable Vector Graphics, Tiny Profile"的简写。可以翻译为"可缩放的矢量图型标准的微型简化版本"。它是矢量图型标准——SVG的一个子集,而主要目标是为手机等低端移动设备提供矢量图形显示格式。
SVG技术细节
- SVG主要支持以下几种显示对象:
- 矢量显示对象,基本矢量显示对象包括矩形、园、椭圆、多边形、直线、任意曲线等
- 嵌入式外部图像,包括PNG、JPEG、SVG等
- 文字对象
SVG可以实现动态和交互功能。在DOM模型的基础上,SVG开发设计人员可以利用ECMAScript或者SMIL(Synchronized Multimedia Integration Language)来进行时序控制或对象的操纵。SVG虽然是文本格式,但是SVG支持利用gzip压缩算法减少文件尺寸,压缩后的文件通常用被称为 "SVGZ文件"。
标准制定开发历史
- W3C于2001年9月4日发布SVG 1.0。
- W3C于2003年1月4日发布SVG 1.1。
- W3C于2003年1月14日推出SVG移动子版本:SVG Tiny和SVG Basic。
- W3C目前正在研究制定SVG 1.2版本。
SVG显示
插件支持
目前,最常用的SVG插件来自Adobe公司Adobe SVG Viewer,另外Corel也提供SVG浏览器Corel SVG Viewer。
本地支持
- 比较著名的SVG项目包括Mozilla SVG Project,KDE的Ksvg,以及Amaya等。
- Mozilla Firefox自版本1.5发行后,即开始支援SVG格式的显示了。
- 基于Java的SVG项目主要有Batik SVG Toolkit等。
- Opera支持SVG显示。
设计工具
能够设计SVG图形作品的软件工具包括Adobe Illustrator以及Corel Draw等。
而开放源代码的软件有Inkscape以及Sodipodi等。
SVG相关链接
软件支援
- Adobe公司SVG插件及Adobe公司SVG应用实例演示
- Inkscape开放源代码的软体
- Sodipodi开放源代码的软体
- Mozilla SVG演示 and Mozilla SVG 演示
- Firefox 1.5——首个Firefox版本开始支援显示SVG格式
- Opera 浏览器——Opera 8.0版开始支援显示SVG Tiny 1.1的spec规格
(THE END)