SVG) 1.1 Specification
Total Page:16
File Type:pdf, Size:1020Kb
Scalable Vector Graphics (SVG) 1.1 Specification W3C Candidate Recommendation 30 April 2002 This version: http://www.w3.org/TR/2002/CR-SVG11-20020430/ (Available in PDF and zipped HTML) Latest version: http://www.w3.org/TR/SVG11/ Previous version: http://www.w3.org/TR/2002/WD-SVG11-20020215/ Editors: Dean Jackson, W3C/CSIRO <[email protected]> (for version 1.1) Jon Ferraiolo, Adobe Systems <[email protected]> (for version 1.0) Jun Fujisawa, Canon <[email protected]> (for modularization and DTD) Authors: See author list Copyright ©1998, 1999, 2000, 2001, 2002 W3C® (MIT, INRIA, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Abstract This specification defines the features and syntax for Scalable Vector Graphics (SVG) Version 1.1, a modularized language for describing two-dimensional vector and mixed vector/raster graphics in XML. Status of this document This section describes the status of this document at the time of its publication. Other documents may supersede this document. The latest status of this document series is maintained at the W3C. This document is the Candidate Recommendation of the SVG 1.1 specification. It serves two purposes: to provide a modularization of SVG based on SVG 1.0 and to include the errata found so far in SVG 1.0. The SVG Working Group believe this document addresses all last call comments (W3C Members only), can be considered stable and should be used as a basis for implementation. The list of changes made in this version of the document is available. The exit criteria for the Candidate Recommendation phase is at least two interoperable implementations over every feature. This phase will close at 2359Z on 23 June 2002. We explicitly invite comments on this specification. Please send them to www- [email protected]: the public email list for issues related to vector graphics on the Web. This list is archived and only subscribers to the list are allowed to post. To subscribe send an email to [email protected] with the word subscribe in the subject line. This document has been produced by the W3C SVG Working Group as part of the Graphics Activity within the W3C Document Formats Domain. The goals of the W3C SVG Working Group are discussed in the W3C SVG Charter (W3C Members only). The W3C SVG Working Group has maintained a public Web page, http://www.w3.org/Graphics/SVG/, which contains further background information. The authors of this document are the SVG Working Group participants. Publication of this document does not imply endorsement by the W3C membership. A list of current W3C Recommendations and other technical documents can be found at http://www.w3.org/TR/. W3C publications may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to cite a W3C Working Draft as anything other than a "work in progress." Available languages The English version of this specification is the only normative version. However, for translations in other languages see http://www.w3.org/Graphics/SVG/svg- updates/translations.html. Table of Contents ● 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 ● Appendix B: SVG Document Object Model (DOM) ● Appendix C: IDL Definitions ● Appendix D: Java Language Binding ● Appendix E: ECMAScript Language Binding ● Appendix F: Implementation Requirements ● Appendix G: Conformance Criteria ● Appendix H: Accessibility Support ● Appendix I: Internationalization Support ● Appendix J: Minimizing SVG File Sizes ● Appendix K: References ● Appendix L: Element Index ● Appendix M: Attribute Index ● Appendix N: Property Index ● Appendix O: Feature Strings ● Appendix P: Index The authors of the SVG 1.1 specification are the people who participated in the SVG Working Group as members or alternates. Authors: ❍ Ola Andersson, ZOOMON AB ❍ Phil Armstrong, Corel Corporation ❍ Benoît Bézaire, Corel Corporation ❍ Craig Brown, Canon Information Systems Research Australia ❍ Mike Bultrowicz, Savage Software ❍ Tolga Capin, Nokia ❍ Mathias Larsson Carlander, Ericsson ❍ Jakob Cederquist, ZOOMON AB ❍ Lee Cole, Quark ❍ Don Cone, America Online Inc. ❍ Alex Danilo, Canon Information Systems Research Australia ❍ Thomas DeWeese, Eastman Kodak ❍ Jon Ferraiolo, Adobe Systems Inc. ❍ Darryl Fuller, Schema Software ❍ Jun Fujisawa, Canon ❍ Rick Graham, BitFlash ❍ Vincent Hardy, Sun Microsystems Inc. ❍ Takanari Hayama, KDDI Research Labs ❍ Lofton Henderson, OASIS ❍ Masayasu Ishikawa, W3C ❍ Dean Jackson, W3C/CSIRO (W3C Team Contact) ❍ Christophe Jolif, ILOG S.A. ❍ Lee Klosterman, Hewlett-Packard ❍ Arei Kobayashi, KDDI Research Labs ❍ Thierry Kormann, ILOG S.A. ❍ Yuri Khramov, Schema Software ❍ Chris Lilley, W3C (Working Group Chair) ❍ Philip Mansfield, Schema Software ❍ Mitsuru Minakuchi, Sharp Corporation ❍ Luc Minnebo, Agfa-Gevaert N.V. ❍ Suichiro Ono, Sharp Corporation ❍ Antoine Quint, ILOG S.A. ❍ Takeshi Sagara, KDDI Research Labs ❍ Hirotaka Ueda, Sharp Corporation ❍ Rick Yardumian, Canon Development Americas ❍ Charles Ying, Openwave Systems Ltd Acknowledgments The SVG Working Group would like to acknowledge the great many people outside of the SVG Working Group who help with the process of developing the SVG 1.1 specification. These people are too numerous to list individually. They include but are not limited to the early implementers of the SVG 1.0 and 1.1 languages (including viewers, authoring tools, and server-side transcoders), developers of SVG content, people who have contributed on the [email protected] and svg- [email protected] email lists, other Working Groups at the W3C, and the W3C Team. SVG 1.1 is truly a cooperative effort between the SVG Working Group, the rest of the W3C, and the public and benefits greatly from the pioneering work of early implementers and content developers, feedback from the public, and help from the W3C team. previous next contents elements attributes properties index previous next contents elements attributes properties index 30 April 2002 Expanded Table of Contents ● Expanded Table of Contents ● Copyright notice ❍ W3C Document Copyright Notice and License ❍ W3C Software Copyright Notice and License ● 1 Introduction ❍ 1.1 About SVG ■ 1.1.1 Modularization ■ 1.1.2 Element and Attribute Collections ■ 1.1.3 Profiling the SVG specification ❍ 1.2 SVG MIME type, file name extension and Macintosh file type ❍ 1.3 SVG Namespace, Public Identifier and System Identifier ❍ 1.4 Compatibility with Other Standards Efforts ❍ 1.5 Terminology ❍ 1.6 Definitions ● 2 Concepts ❍ 2.1 Explaining the name: SVG ❍ 2.2 Important SVG concepts ❍ 2.3 Options for using SVG in Web pages ● 3 Rendering Model ❍ 3.1 Introduction ❍ 3.2 The painters model ❍ 3.3 Rendering Order ❍ 3.4 How groups are rendered ❍ 3.5 How elements are rendered ❍ 3.6 Types of graphics elements ■ 3.6.1 Painting shapes and text ■ 3.6.2 Painting raster images ❍ 3.7 Filtering painted regions ❍ 3.8 Clipping, masking and object opacity ❍ 3.9 Parent Compositing ● 4 Basic Data Types and Interfaces ❍ 4.1 Basic data types ❍ 4.2 Recognized color keyword names ❍ 4.3 Basic DOM interfaces ● 5 Document Structure ❍ 5.1 Defining an SVG document fragment: the 'svg' element ■ 5.1.1 Overview ■ 5.1.2 The 'svg' element ❍ 5.2 Grouping: the 'g' element ■ 5.2.1 Overview ■ 5.2.2 The 'g' element ❍ 5.3 References and the 'defs' element ■ 5.3.1 Overview ■ 5.3.2 URI reference attributes ■ 5.3.3 The 'defs' element ❍ 5.4 The 'desc' and 'title' elements ❍ 5.5 The 'symbol' element ❍ 5.6 The 'use' element ❍ 5.7 The 'image' element ❍ 5.8 Conditional processing ■ 5.8.1 Conditional processing overview ■ 5.8.2 The 'switch' element ■ 5.8.3 The requiredFeatures attribute ■ 5.8.4 The requiredExtensions attribute ■ 5.8.5 The systemLanguage attribute ■ 5.8.6 Applicability of test attributes ❍ 5.9 Specifying whether external resources are required for proper rendering ❍ 5.10 Common attributes ■ 5.10.1 Attributes common to all elements: id and xml:base ■ 5.10.2 The xml:lang and xml:space attributes ❍ 5.11 Core Attribute Module ❍ 5.12 Structure Module ❍ 5.13 Basic Structure Module ❍ 5.14 Container Attribute Module ❍ 5.15 Conditional Processing Module ❍ 5.16 Image Module ❍ 5.17 DOM interfaces ● 6 Styling ❍ 6.1 SVG's styling properties ❍ 6.2 Usage scenarios for styling ❍ 6.3 Alternative ways to specify styling properties ❍ 6.4 Specifying properties using the presentation attributes ❍ 6.5 Entity definitions for the presentation attributes ❍ 6.6 Styling with XSL ❍ 6.7 Styling with CSS ❍ 6.8 Case sensitivity of property names and values ❍ 6.9 Facilities from CSS and XSL used by SVG ❍ 6.10 Referencing external style sheets ❍ 6.11 The 'style' element ❍ 6.12 The class attribute ❍ 6.13 The style attribute ❍ 6.14 Specifying the default style sheet language ❍ 6.15 Property inheritance ❍ 6.16 The scope/range of styles ❍ 6.17 User agent style sheet ❍ 6.18 Aural style sheets ❍ 6.19 Style Module ❍ 6.20 DOM interfaces ● 7 Coordinate Systems, Transformations and Units ❍ 7.1 Introduction ❍ 7.2 The initial viewport ❍ 7.3 The initial coordinate system ❍ 7.4 Coordinate system transformations ❍ 7.5 Nested transformations