科技工作者之家
科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。
科技工作者之家 2020-11-17
可缩放之矢量地图(英文︰Scalable Vectorized Map),顾名思义是可缩放向量图形的地图,有二维及三维,可以制作精细,亦可从简,现在的浏览器大多能使用。
简介可缩放之矢量地图(英文︰Scalable Vectorized Map),顾名思义是可缩放向量图形的地图,有二维及三维,可以制作精细,亦可从简,现在的浏览器大多能使用。1
可缩放矢量图形可缩放矢量图形(英语:Scalable Vector Graphics,SVG)是一种基于可扩展标记语言(XML),用于描述二维矢量图形的图形格式。SVG由W3C制定,是一个开放标准。1
SVG概述SVG从1999年由一组加入W3C的公司启动开发,与之前1998年提交给W3C的标准(PGML、VML)构成竞争。SVG从这两个格式吸取了经验。
SVG允许3种图形对象类型:矢量图形、栅格图像以及文本。图形对象——包括PNG、JPEG这些栅格图像——能够被编组、设计、转换及集成进先前的渲染对象中。文本可以在任何适用于应用程序的XML名字空间之内,从而提高SVG图形的搜索能力和无障碍性。SVG提供的功能集涵盖了嵌套转换、裁剪路径、Alpha通道、滤镜效果、模板对象以及可扩展性。
SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式。
SVG主要支持以下几种显示对象:
矢量显示对象,基本矢量显示对象包括矩形、圆、椭圆、多边形、直线、任意曲线等
嵌入式外部图像,包括PNG、JPEG、SVG等
文字对象
SVG可以实现动态和交互功能。在DOM模型的基础上,SVG开发设计人员可以利用ECMAScript或者SMIL来进行时序控制或对象的操纵。SVG虽然是文本格式,但是SVG支持利用gzip压缩算法减少文件尺寸,压缩后的文件通常用被称为“SVGZ文件”。1
SVG显示插件支持目前,最常用的SVG插件来自Adobe公司,另外Corel也提供SVG浏览器。然而前者宣布于2009年1月1日停止对该产品的支持。
原生支持比较著名的SVG项目包括KDE的KSVG,以及Amaya等。
Opera8.0 版开始支持显示Tiny 1.1规格的SVG。
基于Java的SVG项目主要有Batik SVG Toolkit等。
Google Chrome和Safari支持SVG显示。
Microsoft的Internet Explorer8.0版及其更老的版本尚未支持SVG,直至由Internet Explorer9.0版开始支持SVG。
各种SVG解释器支持程度比较W3C的SVG网站上有一个测试包可以用来测试SVG解释器对于标准的支持。这个包既可以在线运行也可以下载到本地运行。截至2007年中,对于流行的SVG软件有如下测试结果:
对SVG支持最好的浏览器是Opera,它支持大多数的SVG特性。
作为专门的SVG浏览器,Batik SVG viewer能对大多数特性有良好支持,与Opera不相伯仲。但它不能和浏览器互动。
加载了Adobe SVG Viewer的Internet Explorer也能支持多数SVG特性,但是由于没有浏览器的原生支持,在交互方面许多特性不支持。
Mozilla Firefox2.0对SVG特性的支持相当弱,许多重要特性如动画等都不能支持。2
参见Canvas (HTML元素)
本词条内容贡献者为:
王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所