Scalable Vector Graphics (SVG) 1.1 Specification
Scalable Vector Graphics (SVG) 1.1 Specification W3C Recommendation 14 January 2003
This version: /TR/2003/REC-SVG11-20030114/
Latest version: /TR/SVG11/
Previous version: /TR/2002/PR-SVG11-20021115/
摘要
本规范定义了可伸缩矢量图形(SVG)1.1版本的功能和语法: 一种描述二维矢量和矢量/光栅混合图形的基于XML的组件化语言。
本文档的现状
本部分描述文档出版时的情况,其他文档可能取代本文,次文档系列的最新状态由'W3C'维护'.
本文为2003年1月14日SVG 1.1规范建议书. SVG1.1服务于两个目的: 提供基于SVG1.0的SVG模块并包括迄今为止的SVG1.0勘误. SVG工作组确信SVG 1.1 已被社团组织,开发者和其他W3C小组广泛阅读过. 现有版本的所列出的修改清单是有效的。
欢迎对本建议提出的公众评论. 请将评论发至**************: 关于网络矢量图形问题的公共列表. 本名录是存档的,发信者必须同意,从第一次发表起,将他们的通信进行公共存档. 欲订阅须发邮件至********************** 并在标题栏注明”subscribe”.
W3C SVG 工作组发布了一个包括实施报告的SVG1.1版本的测试组件.
网上有关于本文档最新的信息. 至于本次发表,SVG 工作组未察觉有任何他们认为对SVG至关重要的含专利权的专利.
本文档由W3C 工作组创作是W3C互动领域的图形活动的一部分. W3C SVG 工作组的目标在W3C SVG Charter (/Graphics/SVG/Group/SVGcharter2.html) 中有讨论(仅限W3C 成员). W3C SVG 工作组维护公共网址, /Graphics/SVG/, 那里有更多的背景信息. 本文的作者是SVG 工作组的参与者.
一组当前W3C建议书和其他技术文档可在/TR/ (/TR/)到. W3C 出版物可能在任何时间更新,替换,或失效.
现有语种
本规范英文版是唯一的基准版本. 但是, 其他语言的翻译参见
/Graphics/SVG/svg-updates/translations.html
Expanded Table of Contents
扩展目录
Copyright notice
版权声明
1 Introduction
介绍
2 Concepts
概念
3 Rendering Model
成像模型
4 Basic Data Types and Interfaces
基本数据类型和接口
5 Document Structure
文档结构
6 Styling
样式
7 Coordinate Systems, Transformations and Units
坐标系统,变换和单位
8 Paths
路径
9 Basic Shapes
基本形状
10 Text
文本
11 Painting: Filling, Stroking and Marker Symbols
绘图: 填充,沟边,和标记
12 Color
13 Gradients and Patterns
渐变和图案
14 Clipping, Masking and Compositing
剪切,蒙版和组合
15 Filter Effects
滤镜效果
16 Interactivity
交互
17 Linking
链接
18 Scripting
脚本
19 Animation
动画
20 Fonts
字体
21 Metadata
元数据
22 Backwards Compatibility
向后兼容性
23 Extensibility
扩展性
Appendix A: DTD
附录 A: DTD
Appendix B: SVG Document Object Model (DOM)
附录 B: SVG 文件对象模型(DOM)
Appendix C: IDL Definitions
附录 C: IDL 定义
Appendix D: Java Language Binding
附录 D: Java语言绑订
Appendix E: ECMAScript Language Binding
附录 E: ECMASript语言绑订
Appendix F: Implementation Requirements
附录 F: 执行条件
Appendix G: Conformance Criteria
附录 G: 一致性准则
Appendix H: Accessibility Support
附录 H: 使用途径的支持
Appendix I: Internationalization Support
附录 I: 国际化的支持
Appendix J: Minimizing SVG File Sizes
附录 J: SVG文件大小优化
Appendix K: References
附录 K: 参考
Appendix L: Element Index
附录 L: 元素索引
Appendix M: Attribute Index
附录 M: 属性索引
Appendix N: Property Index
附录 N: 特性索引
Appendix O: Feature Strings
附录 O: 特殊字符串
Appendix P: Index
附录 P: 索引
作者:
鸣谢:
SVG 工作组特此鸣谢众多参与帮助了SVG1.1规范的开发的组外人员.他们人数之多,不胜枚举. 他们有,但不限于SVG1.0 和1.1语言(包括阅览器, 制作工具, 和服务器端转码器),的早期实现者, SVG内容开发者, 在************** ****************************** 列表中贡献过的人, 其他W3C 工作组, 和W3C 团对. SVG 1.1 实在是SVG 工作组及其余的W3C和公众的共同努力. 她巨大地受益于早期实施者和内容开发者的开拓工作, 公众反馈, 和来自W3C 团队帮助.
1 简介
1.1 关于SVG
本规范定义可扩展矢量图形(SVG).的特性和语法。
SVG是一种基于XML[XML10]的二维图形描述语言。SVG允许三种图形对象:矢量图形形状(如由直线和曲线组成的轨迹)、图像和文本。图形对象可以被组合、定制样式、变形和组成先前渲染过的对象。其特性包括嵌套变换(nested Transformations)、路径剪裁(clip
ping paths)、蒙版(alpha masks)、滤镜效果(filter effects)和模板对象(template objects)。
SVG 图形是可交互和动态的。 动画可以既直接定义和触发(例如,把SVG动画元素嵌入SVG文本中),也可以通过脚本控制。
通过脚本语言访问SVG文档对象模型 (DOM),使得复杂的SVG 应用成为可能。SVG文档对象模型 (DOM)可以提供对所有元素(elements)、属性(attributes)和属性(properties)的完全访问。可以给SVG图形对象分配等许多事件句柄(event handlers),如onmouseover 和onclick。 由于它的兼容性和对其它Web标准的影响(leveraging of other Web standards),很多特性,比如脚本,可以在同一个Web页面中同时针对XHTML和 SVG元素编写。
SVG是一种针对复杂图形的语言。出于访问性的原因,如果一个初始源文档包含较高级别的结构和语义,建议较高级别的信息应以某种方式可用,既可以让初始源文件可用,也可以让能够传达高级别信息的其它格式的其它版本的文档可访用,或使用SVG的功能将较高级别的信息包含到SVG内容中。要获得更好的访问性的技术信息,请参见访问性
1.1.1 模块化
这里包含的SVG模块化是对SVG 1.0的分解和一个针对提供特定功能的抽象模型集的勘误表。这些模块可以相互组合,也可以同其它规范定义的模块组合(如XHTML),以建立SVG的子集和扩展文档类型,作为SVG文档类型家族的成员。参见SVG文档家族的一致性(Conformance) 描述,以及XHTML,MathML和SVG的 [XHTMLplusMathMLplusSVG] 组合描述。
每个SVG 规范的主要节的结尾部分都有一个模块名称,例如:“文本模块”或“基本结构模块”。如果一个模块没有“基本(Basic)”前缀,则说明它包含完整地元素(elements)和属性(attributes),同规范的相应节没有约束。如果需要提供已完成模块的功能子集,则要在该模块的命名中加上前“基本(Basic)”前缀。例如,“基本文本模块”就是“文本模块”的一个子集。
在SVG 1.1中,同时包含完成模块和它的基本子集模块(如“文本模块”和“基本文本模块”)是一个错误。
1.1.2 元素和属性集
多数模块都定义了元素(elements)和属性(attributes)的名称集合。这些集合被用于描述特定元素的一组属性(如Style属性集合),或作为特定元素的子元素的一组元素(如Shape元素集合)。所有集合的名称都以大写字母开头。
在定义一个框架(profile)时,假设所有元素和属性集合都被定为空。这样,一个模块在被包含到框架(profile)中时,就可以重新定义这些集合,在框架(profile)内增加元素和属性以使他们有效。因此,引用没有包含在框架中的模块的元素或属性集合不是错误,这只说明该集合是空的。
只有Presentation.attrib 例外,它是所有presentation 属性的联合(如所有名字中包含"Presentation"的所有属性集合), Presentation.attrib 没有在任何模块中定义,但在每个框架(profile)中都存在。
一个模块的子集(如基本模块)可以定义一个与父模块不同的名称集合。由于在一个框架中包含同一组的子模块和父模块是一个错误的,所有属性和元素集合都必须由包含他们的
模块定义一次,或者保留他们默认的空值(没有被任何模块定义的Presentation.attrib例外)。
1.1.3 svg图形剖析SVG规范
SVG1.1模块化允许用它们认可的SVG模块列表来描述框架,可能还会有少量由这些模块提供的针对元素的限制或扩展。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。