●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小时内删除。
发表评论