Comparison of layout engines (SVG)
From Wikipedia, the free encyclopedia
| This article or section is incomplete and may require expansion and/or cleanup. Please improve the article, or discuss the issue on the talk page. |
| Scalable Vector Graphics |
|---|
|
SXBL |
The following tables compare SVG compatibility and support for a number of layout engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
Contents |
[edit] Explanation of the tables
[edit] Engine nomenclature
Rather than the names of web browsers, the names of the underlying engines are used. The browsers that use the various engines are listed below.
| Layout Engine | Used By |
|---|---|
| Trident | Internet Explorer 4 to Internet Explorer 8 |
| Tasman | Internet Explorer 5 for Mac |
| Gecko | All Mozilla software, including Firefox; Galeon; Flock; also Epiphany |
| WebKit | Safari; iCab 4; Epiphany; |
| KHTML | Konqueror |
| Presto | Opera; Nintendo DS Browser; Internet Channel |
| iCab | iCab 1-3 |
| Prince XML | Prince XML |
| Amaya | Amaya |
Adobe SVG Viewer, Batik, DENG (XML Browser Engine), eSVG and Renesis are SVG-Plugins.
[edit] Values
Values indicate the level of support in the most recent version of the layout engine, or (if a version number is given) in the specified version. Version numbers without any other value indicate the version at which the layout engine first fully supported the feature.
| Value | Meaning |
|---|---|
| Yes | Indicates that the layout engine fully supports this property when valid values are used. |
| No | Indicates that this property is completely ignored. |
| Partial | Indicates that the property is understood, but that not all values are supported. Supported values are implemented correctly. |
| Incorrect | Indicates that the property is understood, but that it is not implemented correctly in all cases. |
| Experimental | Indicates that the property is provided in experimental form under an alternative name, generally with only partial functionality. |
[edit] SVG version support
Note: IE, Tasman and iCab (before version 4) do not support SVG natively, but requires third-party plugins, thus are not listed.
| Gecko | WebKit | KHTML | Presto | Prince XML | Amaya | Adobe SVG Viewer | Batik | DENG | eSVG | Renesis | |||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| SVG | 1.1 | Tiny (SVGT) | Partial | Partial | Partial | 8.0 | Partial | Partial | Partial | Partial | Partial | Yes | Partial |
| Basic (SVGB) | Partial | Partial | Partial | Mostly | Partial | Partial | Partial | Partial | Partial | Partial | Partial | ||
| Full | Partial | Partial | Partial | Partial | Partial | Partial | Partial | Mostly | Partial | Partial | Partial | ||
| 1.2 | Tiny | No | No | No | Partial - 9.5a | ? | ? | No | Partial | ? | Mostly mobile profile |
Partial | |
| sXBL | No | No | No | No | No | No | No | Yes | No | No | No | ||
| XBL 2.0 | No | No | No | No | No | No | No | No | No | No | No | ||
[edit] Gecko general overview notes
- SVG — Firefox 1.5 and 2.0 support a subset of SVG 1.1.[1] Gecko 1.9 will support many more features.[2]
[edit] KHTML general overview notes
- KHTML — Does not have any native image support. This is by design: in Konqueror, multimedia files are handled by KParts. The KDE project also developed an SVG plugin for Konqueror, known as KSVG.[3]
[edit] Presto general overview notes
- SVG Basic — Presto 9.0 has added quite large, but incomplete SVGB support.
[edit] SVG 1.1 support
Comparison of various Scalable Vector Graphics element support.
| Gecko | WebKit | KSVG | Presto | Prince XML | Amaya | Adobe SVG Viewer | Batik | DENG | eSVG | Renesis | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Structure Module | |||||||||||
| svg (SVGT) | 1.8 | 522 | Yes | 8.0 | Yes | Yes | 1.0 | Yes | Yes | Yes | Yes |
| g (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | Yes | 1.0 | Yes | Yes | Yes | ? |
| defs (SVGT) | 1.8 | 522 | Yes | 9.0 | 6.0 | ? | 1.0 | Yes | Yes | Yes | ? |
| desc (SVGT) | 1.8 | 522 | No | 9.0 | ? | ? | 1.0 | Yes | ? | Yes | ? |
| title (SVGT) | 1.8 | 522 | No | 9.0 | ? | ? | 3.0 | Yes | ? | Yes | ? |
| metadata (SVGT) | 1.8 | 522 | ? | 9.0 | ? | ? | 2.0 | Yes | ? | Yes | ? |
| symbol (SVGB) | 1.8 | 522 | No | 9.0 | 6.0 | ? | 1.0 | Yes | ? | ? | 0.6 |
| use (SVGT) | 1.8 | 522 | No | 9.0 | 6.0 | Yes | 1.0 | Yes | ? | Yes | 0.6 |
| Conditional Processing Module | |||||||||||
| switch (SVGT) | 1.8 | 522 | ? | 9.0 | ? | ? | 2.0 | Yes | ? | Yes | ? |
| Image Module | |||||||||||
| image (SVGT) | 1.8 | 522 | No | 9.0 | 5.1 | 4.0 | 1.0 | Yes | ? | Yes | 0.5 |
| Style Module | |||||||||||
| style (SVGT) | 1.8 | 522 | ? | 9.0 | Yes | Yes | 1.0 | Yes | Yes | Yes | 0.6 |
| Shape Module | |||||||||||
| path (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| rect (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | 0.6 |
| circle (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| line (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| ellipse (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| polyline (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| polygon (SVGT) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | Yes | Yes | ? |
| Text Module | |||||||||||
| text (SVGT) | 1.8 | 522 | Yes | 9.0 | 5.1 | 4.0 | 1.0 | Yes | ? | Yes | 0.7 |
| tspan (SVGB) | 1.8 | 522 | Yes | 9.0 | Yes | 4.0 | 1.0 | Yes | ? | ? | 0.7 |
| tref (SVGB) | No | 522 | Yes | 9.0 | Yes | 6.3 | 1.0 | Yes | ? | ? | 0.6 |
| textPath (SVGB) | 1.8.1 | No | Yes | 9.0 | ? | 4.0 | 1.0 | Yes | ? | ? | No |
| altGlyph | No | No | ? | No | ? | 4.0 | 2.0 | Yes | ? | ? | ? |
| altGlyphDef | No | No | ? | No | ? | 4.0 | 2.0 | Yes | ? | ? | ? |
| altGlyphItem | No | No | ? | No | ? | 4.0 | No | Yes | ? | ? | ? |
| glyphRef | No | No | ? | No | ? | 4.0 | 2.0 | Yes | ? | ? | ? |
| Marker Module | |||||||||||
| marker | 1.8 | 522 | ? | 9.0 | 6.0 | ? | 3.0 | Yes | ? | ? | ? |
| Color Profile Module | |||||||||||
| color-profile | No | No | ? | No | ? | ? | 3.0 | Yes | ? | ? | ? |
| Gradient Module | |||||||||||
| linearGradient (SVGB) | 1.8 | 522 | Yes | 8.0 | 6.0 | ? | 1.0 | Yes | ? | ? | 0.5 |
| radialGradient (SVGB) | 1.8 | 522 | Yes | 9.0 | 6.0 | ? | 1.0 | Yes | ? | ? | 0.5 |
| stop (SVGB) | 1.8 | 522 | Yes | 8.0 | ? | ? | 1.0 | Yes | ? | ? | 0.5 |
| Pattern Module | |||||||||||
| pattern (SVGB) | 1.9 | 522 | Yes | 9.0 | ? | ? | 2.0 | Yes | ? | ? | 0.5 |
| Clip Module | |||||||||||
| clipPath (SVGB) | 1.8 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | 0.6 |
| Mask Module | |||||||||||
| mask (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | ? |
| Filter Module | |||||||||||
| filter | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feBlend (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feColorMatrix (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feComponentTransfer (SVGB) | 1.8 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feComposite (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feConvolveMatrix | 1.9 | No | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feDiffuseLighting | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feDisplacementMap | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feFlood (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feGaussianBlur (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feImage (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feMerge (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feMergeNode | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feMorphology | 1.9 | No | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feOffset (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feSpecularLighting | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feTile (SVGB) | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feTurbulence | 1.9 | No | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feDistantLight | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| fePointLight | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feSpotLight | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feFuncR | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feFuncG | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feFuncB | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| feFuncA | 1.9 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | ? | No |
| Cursor Module | |||||||||||
| cursor | No | 522 | ? | No | ? | ? | No | Yes | ? | ? | 0.6 |
| Hyperlinking Module | |||||||||||
| a (SVGT) | 1.8 | 522 | Yes | 8.0 | 5.1 | 8.2 | 1.0 | Yes | Yes | Yes | 0.6 |
| View Module | |||||||||||
| view (SVGB) | No | Partial | ? | 9.0 | ? | ? | 3.0 | Yes | ? | ? | ? |
| Scripting Module | |||||||||||
| script (SVGT) | 1.8 | 522 | ? | 9.0 | ? | ? | 1.0 | Yes | ? | Yes | 0.5 |
| Animation Module | |||||||||||
| animate (SVGT) | No | No | Yes | 9.0 | No | ? | 1.0 | Yes | ? | Yes | No |
| set (SVGT) | No | 522 | Yes | 9.0 | No | ? | 1.0 | Yes | ? | Yes | No |
| animateMotion (SVGT) | No | Partial | No | 9.0 | No | ? | 1.0 | Yes | ? | Yes | No |
| animateTransform (SVGT) | No | 522 | No | 9.0 | No | ? | 1.0 | Yes | ? | Yes | No |
| animateColor (SVGT) | No | 522 | Yes | 9.0 | No | ? | 1.0 | Yes | ? | Yes | No |
| mpath (SVGT) | No | Yes | ? | 9.0 | No | ? | 2.0 | Yes | ? | Yes | No |
| Font Module | |||||||||||
| font (SVGT) | No | Yes | ? | 9.0 | ? | ? | 2.0 | Yes | ? | Yes | ? |
| font-face (SVGT) | No | Yes | ? | 8.0 | ? | ? | 2.0 | Yes | ? | Yes | 0.7 |
| glyph (SVGT) | No | Yes | ? | 8.0 | ? | ? | 2.0 | Yes | ? | No | ? |
| missing-glyph (SVGT) | No | Yes | ? | 8.0 | ? | ? | 2.0 | Yes | ? | Yes | ? |
| hkern | No | No | ? | 9.0 | ? | ? | 2.0 | Yes | ? | ? | ? |
| vkern | No | No | ? | 9.0 | ? | ? | 2.0 | Yes | ? | ? | ? |
| font-face-src | No | Yes | ? | No | ? | ? | No | Yes | ? | ? | ? |
| font-face-uri | No | Yes | ? | 9.0 | ? | ? | No | Yes | ? | ? | ? |
| font-face-format | No | Yes | ? | No | ? | ? | No | No | ? | ? | ? |
| font-face-name | No | Yes | ? | No | ? | ? | No | Yes | ? | ? | ? |
| definition-src | No | No | ? | No | ? | ? | No | No | ? | ? | ? |
| Extensibility Module | |||||||||||
| foreignObject | 1.8 | 522 | ? | 9.0 | No | 7.2 | No | No | ? | ? | ? |
[edit] References
- Batik Implementation Status. Retrieved on January 11, 2008.
- Mozilla SVG Project. Mozilla + SVG Status. Retrieved on May 1, 2005.
- Opera 8 Features. SVG. Retrieved on May 1, 2005.
- Opera 9 Features. SVG. Retrieved on April 21, 2006.
- Prince XML 5.1 SVG Status.
- Prince XML 6.0 SVG Status.
- WebKit SVG Status. Retrieved on June 17, 2007.
- DENG XML Browser Engine Features.
- Amaya Release History.
- eSVG supported features.
[edit] Footnotes
- ^ SVG in Firefox 2.0
- ^ Mozilla SVG Status (development version)
- ^ See http://svg.kde.org/. KSVG seems to be inactive as of 2007.
[edit] External links
- SVG rendering engine comparison pages - visual comparison among various FOSS SVG rendering libraries
- W3C SVG Test Cases for SVG Full
- SVG Test Suite Results - Summary results of W3C test suite on multiple browsers and browser plugins.
- A Comparison of the SVG-able layout engines and Plugins
|
||||||||

