Navigation
  • Home
  • Recent
  • Most Active
  • Popular
  • Blog
  • Credits
  • RSS
  •   Interaction
  • Register
  • Statistics
  •   Help
  • Suggestions
  • Contact Us
  • How to Edit
  • Help



  • [Edit]




    SVG is also the IATA code for Stavanger Airport, Sola in Norway.


    Scalable Vector Graphics (SVG) is an XML markup language for describing two-dimensional vector graphics, both static and animated, and either declarative or scripted. It is an open standard created by the World Wide Web Consortium.



        Scalable Vector Graphics
            Overview
                Impact on the Web
            Development history
                Mobile profiles
            Support for SVG in browsers
                Native support
                Plugin support
            Support in applications
            Mobile support
            SVG and wikis
            See also
                
                Demos
                Libraries
                Tutorials
                Articles
                Viewers, Editors and Converters
    NameScalable Vector Graphics
    CaptionStatic image generated from an SVG example. T...
    Mimeimage/svg+xml
    OwnerWorld Wide Web Consortium
    Genrevector graphics
    Extended FromXML

    top

    Overview
    SVG allows three types of graphic objects:
      Vector graphic shapes (e.g. paths consisting of straight lines and curves, and areas bounded by them)
      Text

    Graphical objects can be grouped, styled, transformed and composited into previously rendered objects. Text can be in any XML namespace suitable to the application, which enhances searchability and accessibility of the SVG graphics. The feature set includes nested transformations, clipping paths, alpha masks, filter effects, template objects and extensibility.

    SVG drawings can be dynamic and interactive. The Document Object Model (DOM) for SVG, which includes the full XML DOM, allows straightforward and efficient vector graphics animation via ECMAScript or SMIL. A rich set of event handlers such as onmouseover and onclick can be assigned to any SVG graphical object. Because of its compatibility and leveraging of other Web standards, features like scripting can be done on SVG elements and other XML elements from different namespaces simultaneously within the same web page. An extreme example of this is a complete Tetris game implemented as an SVG object, found here. (The link requires an SVG enabled browser.)

    If storage space is an issue, SVG images can be saved with gzip compression, in which case they may be called "SVGZ files". Because XML contains verbose text, it tends to compress very well and these files can be much smaller. Often however the original vector-file (SVG) is already smaller than the rasterised version.

    top

    Impact on the Web
    The widespread adoption of SVG clients, particularly those natively embedded in web browsers (as it is in Firefox and Opera), may bring a significant new look-and-feel to the World Wide Web. A current trend is to build dynamic web sites that behave somewhat like desktop applications, utilizing the Ajax technique. SVG enhances the capabilities of Ajax, by providing a rich, graphical set of page elements, well beyond those specified by HTML/CSS. The SVG Terminal module for Firefox is an early example of this.

    top

    Development history
    SVG was developed by the W3C SVG Working Group starting in 1998, after Macromedia and Microsoft introduced Vector Markup Language (VML) whereas Adobe Systems and Sun Microsystems submitted a competing format known as PGML. The working group was chaired by Chris Lilley of the W3C.

      SVG 1.1 became a W3C Recommendation on 2003-01-14. The SVG 1.1 specification is modularized in order to allow subsets to be defined as profiles. Apart from this, there is very little difference between SVG 1.1 and SVG 1.0.
        SVG Tiny and SVG Basic (the Mobile SVG Profiles) became W3C Recommendations on 2003-01-14. These are described as profiles of SVG 1.1.
      SVG Tiny 1.2 became a W3C Candidate Recommendation on 2006-08-10 *. SVG Full 1.2 is a W3C Working Draft. SVG Tiny 1.2 was initially released as a profile, and later refactored to be a complete specification, including all needed parts of SVG 1.1 and SVG 1.2. A similarly refactored draft for SVG 1.2 Full has not yet been released. A notable feature addition in the SVG Full 1.2 W3C Working Draft (absent from SVG Tiny 1.2) is syntax for multipage documents (*); the semantics of multiple pages with respect to non-hardcopy rendering are however undefined.



    top

    Mobile profiles
    Because of industry demand, two mobile profiles were introduced with SVG 1.1: SVG Tiny (SVGT) and SVG Basic (SVGB). These are subsets of the full SVG standard, mainly intended for user agents with limited capabilities. In particular, SVG Tiny was defined for highly restricted mobile devices such as cellphones, and SVG Basic was defined for higher level mobile devices, such as PDAs.

    Neither mobile profile includes support for the full DOM, while only SVG Basic has optional support for scripting, but because they are fully compatible subsets of the full standard most SVG graphics can still be rendered by devices which only support the mobile profiles.

    A listing of phones that support SVG can be found at the lsvg.org community web site.

    top

    Support for SVG in browsers
    The use of SVG on the web is in its infancy. There is a great deal of inertia due to the long-time use of pure raster formats and other formats like Macromedia Flash or Java applets, but also browser support is still uneven, with native support in Opera and Firefox, but Safari and Internet Explorer requiring a plugin. Web sites which serve SVG images typically also provide the images in a raster format, either automatically by HTTP content negotiation or allowing the user to directly choose the file.

    top

    Native support
    There are several advantages to native support, among which are no need for the installation of a plugin, the ability to freely mix SVG with other formats in a single document, and rendering scripting between different document formats considerably more reliable. At this time all major browsers have committed to some level of SVG support except for Internet Explorer. See Comparison of layout engines for further details.

      The Opera web browser (since 8.0) has support for the SVG 1.1 Tiny specification while Opera 9 includes SVG 1.1 Basic support and some of SVG 1.1 Full.
      Apple's Safari browser has also recently begun to port KSVG2 into WebCore, initiating work on incorporating native support of SVG into Safari. Nightly builds of Safari now include SVG support.
      The Omni Group's OmniWeb 5.5 browser, which is based on a later version of Apple's WebCore/WebKit than that used in the current public release of Safari, has partial support for SVG.
      KDE's Konqueror has a fairly complete SVG plugin called KSVG. KSVG2 is slated to be rolled into KDE 4 core which could make it native rendering for Konqueror some time in the future. Elsewhere in KDE the format is finding greater use, and from version 3.4 onwards SVG wallpapers are supported.
      Amaya web browser has partial SVG support.

    top

    Plugin support
    In browsers such as Internet Explorer and Safari, a plugin is needed to view SVG content. The most widely available SVG plugin on the desktop is from Adobe Systems and supports most of SVG 1.0/1.1. (Adobe's SVG download page now says "Please note that Adobe has announced that it will discontinue support for Adobe SVG Viewer on January 1, 2008.") The current version of Safari ships with the plugin, while Internet Explorer users must separately download it. A legacy plugin was once offered from Corel.

    top

    Support in applications

    Images are usually automatically rasterised using a library such as ImageMagick, which provides a quick but incomplete implementation of SVG, or Batik, which implements all of SVG except for declarative animation but requires the Java Runtime Environment.

      Sodipodi is another free open source SVG editing program, on which Inkscape is based.
      The Batik SVG Toolkit can be used by Java programs to render, generate, and manipulate SVG graphics.
      The GNOME project has had integrated SVG support throughout the desktop since 2000.
      Adobe Illustrator, the industry standard for graphic design, also supports both the import and export of SVG images.
      Coreldraw X3, has an excellent SVG export and import filter.
      Sketsa is a cross-platform SVG drawing software.

    Some viewers are listed in external links.

    top

    Mobile support
    On mobile, the most popular implementations for mobile phones are by Ikivo and Bitflash, while for PDAs, Bitflash and Intesis have implementations. Flash Lite by Macromedia optionally supports SVG Tiny since version 1.1. At the SVG Open 2005 conference, Sun demonstrated a mobile implementation of SVG Tiny 1.1 for the CDLC platform.
    Mobile svg players from Ikivo and BitFlash come pre-installed i.e. manufacturer burn the SVG player code in their mobiles before shipping to the customers.

    Level of SVG Tiny support varies from mobile to mobile depending on the manufacturer and version of the svg player installed. Many of the new mobiles support additional features beyond SVG Tiny 1.1, like gradient and opacity.

    top

    SVG and wikis

    Some wikis have experimented with SVG support; it has been speculated that since SVG is a text-based format, a wiki might allow edits to SVG images in a fashion similar to editing a standard article. However, the benefits of editing images in this way are disputed. It is generally considered that even trivial editing is better achieved using a separate graphics package because it is difficult to visualise exactly how changes to the XML will appear on the final image.

    Some wikis do not support natively displaying or editing SVG images in a web browser. However, some wikis can render SVG images as raster images, to be more compatible with browsers that do not have native SVG support.

    SVG support would be valuable to a wiki, especially for articles that require diagrams, so the situation may change in the future, when ImageMagick is expanded to cover more of the SVG standard, and work on allowing Batik to run on a completely free Java implementation is complete *.

    The MediaWiki software used to run Wikipedia currently supports the SVG format. However, when rasterizing SVG images, it does not render some fonts like Verdana, and instead uses Arial.

    top

    See also
      SVG Tools Editors, converters and other tools for SVG.
      sXBL SVG's XML binding language
      SMIL Synchronized Multimedia Integration Language

    top





    top

    Demos
      Adobe SVG Demos (These examples are for Adobe's SVG variant, and require Adobe's plugin.)

    top

    Libraries
      - another Java SVG player and renderer (LGPL)
      JUCE - cross-platform UI library which includes an SVG importer.

    top

    Tutorials

    top

    Articles

    top

    Viewers, Editors and Converters
    see SVG Tools or the SVG Implementations Directory svgi.org








     
    Search more:
     

       
    Source Privacy License Download Contact Us Atlas
    Scientus.org Dictionary (Yet Another Wiki) RC : 1.39
    This article is licensed under the GNU Free Documentation License [copyleft]. It uses material from the Wikipedia article "Scalable Vector Graphics". link