Comparison of layout engines (Scalable Vector Graphics)
The following tables compare SVG compatibility and support for a number of layout engines.
Scalable Vector Graphics | |
---|---|
Explanation of tables
See list of layout engines for the full list. Adobe SVG Viewer, Batik, eSVG and Renesis are SVG-Plugins.
Values
These indicate the level of support for the given item in each engine. By default, the most recent version of the engine is implied. However, a specific version number can be listed; when this indicates full support, it's the initial version of the engine fully supporting the item.
Value | Meaning |
---|---|
Yes | Fully supported |
No | Has never been supported |
Partial | Only some values are supported |
Incorrect | Not implemented correctly in all cases |
Experimental | May be incomplete or buggy |
Nightly build | Currently in development; full support is expected |
Depends | Only supported for the specified conditions |
Dropped | No longer supported |
SVG version support
Trident | Gecko | WebKit | Blink | Presto | KHTML | Prince | Amaya | Batik | Renesis | LeonLabs | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SVG | 1.1 | Tiny (SVGT) | 5.0[t 1] | Partial[g 1] | Partial | Partial | 1.0 | Partial[note 1] | Partial | Partial | Mostly | Partial | Partial |
Basic (SVGB) | Mostly | ||||||||||||
Full | |||||||||||||
1.2 | Tiny | No | No | No | No | 2.1 | No | ? | ? | Partial | Partial | Partial | |
Full | No | No | No | No | No | No | |||||||
sXBL | Yes | ||||||||||||
XBL 2.0 | No | ||||||||||||
Embedding
This table shows support status of different ways of embedding SVG into HTML, for different layout engines.
Trident | Gecko | WebKit | Blink | Presto | KSVG | Amaya | |
---|---|---|---|---|---|---|---|
<img> |
5.0[t 1] | 2.0[g 2] | Yes[w 1] | ? | 2.1 | No | 5.1 |
<embed> |
1.8 | Yes[w 2] | Partial[note 2] | Partial[note 3] | 5.2 | ||
<object> |
Yes | 5.1 | |||||
CSS background-image |
2.0[g 3] | No | 2.1 | No | ? | ||
CSS list-style-image |
Partial[note 4] | ? | |||||
as Favicon | No | 41[g 4] | No | 80[b 1] | 2.1.1 | ? | |
in data URIs | 5.0 | Yes | Yes | ? | No | ? | ? |
SVG 1.1 support
Comparison of various Scalable Vector Graphics element support.
Profile | Element | Trident | Gecko | WebKit[w 3] | Blink | Presto | KSVG | Prince | Amaya | Adobe SVG Viewer | Batik | Renesis | LeonLabs |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Structure Module | |||||||||||||
Tiny | svg |
5.0[t 2] | 1.8 | 522 | ? | 1.0 | Yes | Yes | Yes | 1.0 | Yes | Yes | 1.0 |
g |
2.0 | 1.0 | |||||||||||
defs |
6.0 | ? | |||||||||||
desc |
No | No | ? | ||||||||||
title |
? | 3.0 | |||||||||||
metadata |
? | ? | 2.0 | ||||||||||
use |
Yes[w 4] | No | 6.0 | Yes | 1.0 | 0.6 | |||||||
Basic | symbol |
522 | ? | ||||||||||
Conditional Processing Module | |||||||||||||
Tiny | switch |
Yes | 1.8 | 522 | ? | 2.0 | ? | No | ? | 2.0 | Yes | No | 1.0 |
Image Module | |||||||||||||
Tiny | image |
5.0[t 2] | 2.0[g 5] | 522 | ? | 2.0 | No | 5.1 | 4.0 | 1.0 | Yes | 0.5 | 1.0 |
Style Module | |||||||||||||
Tiny | style |
5.0[t 1] | 1.8 | 522 | ? | 2.0 | ? | Yes | Yes | 1.0 | Yes | 0.6 | 1.0 |
Shape Module | |||||||||||||
Tiny | circle |
5.0[t 2] | 1.8 | 522 | ? | 2.0 | Yes | Yes | 4.0 | 1.0 | Yes | 1.0 | 1.0 |
ellipse | |||||||||||||
line | |||||||||||||
path | |||||||||||||
polygon | |||||||||||||
polyline | |||||||||||||
rect |
0.6 | ||||||||||||
Text Module | |||||||||||||
Tiny | text |
5.0[t 1] | 1.8 | 522 | ? | 2.0 | Yes | 5.1 | 4.0 | 1.0 | Yes | 0.7 | 1.0 |
Basic | tspan |
Yes | |||||||||||
tref |
No[g 6] | No | 6.3 | 0.6 | |||||||||
textPath |
1.8.1 | 4.0 | No | ||||||||||
Full | altGlyph |
Partial[g 7][g 8] | Partial | 2.2 | ? | 2.0 | |||||||
altGlyphDef |
No | No | ? | ||||||||||
altGlyphItem |
? | ? | No | ||||||||||
glyphRef |
2.2 | ? | 2.0 | ||||||||||
Profile | Element | Trident | Gecko | WebKit | Blink | Presto | KSVG | Prince XML | Amaya | Adobe SVG Viewer | Batik | Renesis | LeonLabs |
Marker Module | |||||||||||||
Full | marker |
5.0[t 1] | 1.8 | 522 | ? | 2.0 | ? | 6.0 | ? | 3.0 | Yes | 1.0 | 1.0 |
Color Profile Module | |||||||||||||
Full | color-profile |
No | No[g 9] | No[w 5] | ? | No | No | No | ? | 3.0 | Yes | No | 1.0 |
Gradient Module | |||||||||||||
Basic | linearGradient |
5.0[t 1] | 1.8 | 522 | ? | 1.0 | Yes | 6.0 | ? | 1.0 | Yes | 0.5 | 1.0 |
radialGradient |
2.0 | ? | |||||||||||
stop |
1.0 | ? | ? | ||||||||||
Pattern Module | |||||||||||||
Basic | pattern |
5.0[t 1] | 1.9 | 522 | ? | 2.0 | Yes | ? | ? | 2.0 | Yes | 0.5 | 1.0ttt |
Clip Module | |||||||||||||
Basic | clipPath |
5.0[t 1] | 1.8 | Mostly[w 6] | ? | 2.0 | ? | ? | ? | 1.0 | Yes | 0.6 | 1.0 |
Mask Module | |||||||||||||
Basic | mask |
5.0[t 1] | 1.9 | 522 | ? | 2.0 | ? | ? | ? | 1.0 | Yes | No | 1.0 |
Filter Module | |||||||||||||
Basic | feBlend |
6.0[t 3] | 1.9 | Nightly build[w 7] | ? | 2.0 | ? | No | ? | 1.0 | Yes | No | |
feColorMatrix |
? | ? | 1.0 | ||||||||||
feComponentTransfer |
? | ? | |||||||||||
feComposite |
? | ? | |||||||||||
feFlood |
? | ? | |||||||||||
feGaussianBlur |
? | ? | 1.0 | ||||||||||
feImage |
? | ? | 1.0 | ||||||||||
feMerge |
? | ? | |||||||||||
feOffset |
? | ? | 1.0 | ||||||||||
feTile |
? | ? | |||||||||||
Full | filter |
Nightly build[w 7] | ? | ? | |||||||||
feConvolveMatrix |
Nightly build[w 8] | ? | ? | ||||||||||
feDiffuseLighting |
Nightly build[w 9] | ? | ? | ||||||||||
feDisplacementMap |
Nightly build[w 7] | ? | ? | ||||||||||
feMergeNode |
? | ? | |||||||||||
feMorphology |
? | ? | |||||||||||
feSpecularLighting |
Nightly build[w 10] | ? | ? | ||||||||||
feTurbulence |
Nightly build[w 11] | ? | ? | ||||||||||
feDistantLight |
No | ? | ? | ||||||||||
fePointLight |
? | ? | |||||||||||
feSpotLight |
? | ? | |||||||||||
feFuncR |
Nightly build[w 7] | ? | ? | ||||||||||
feFuncG |
? | ? | |||||||||||
feFuncB |
? | ? | |||||||||||
feFuncA |
? | ? | |||||||||||
Profile | Element | Trident | Gecko | WebKit | Blink | Presto | KSVG | Prince XML | Amaya | Adobe SVG Viewer | Batik | Renesis | LeonLabs |
Cursor Module | |||||||||||||
Full | cursor |
No[t 4] | No[g 10] | Partial | ? | No | ? | ? | ? | No | Yes | 0.6 | |
Hyperlinking Module | |||||||||||||
Tiny | a |
Yes | 1.8 | 522 | ? | 1.0 | Yes | 5.1 | 8.2 | 1.0 | Yes | 0.6 | 1.0 |
View Module | |||||||||||||
Basic | view |
No | 15.0[g 11] | Partial | ? | 2.0 | ? | ? | ? | 3.0 | Yes | No | 1.0 |
Scripting Module | |||||||||||||
Tiny | script |
Yes | 1.8 | 522 | ? | 2.0 | ? | ? | ? | 1.0 | Yes | 0.5 | |
Animation Module | |||||||||||||
Tiny | animate |
No | 2.0[g 12] | No | ? | 2.0 | Yes | No | Yes | 1.0 | Yes | No | 1.0 |
set |
Partial | ||||||||||||
animateMotion |
2.0[g 13] | No | 1.0 | ||||||||||
animateTransform |
2.0[g 12] | 1.0 | |||||||||||
animateColor (deprecated) |
No[g 14] | Yes | |||||||||||
mpath |
2.0[g 13] | 522 | ? | ? | 2.0 | ||||||||
Font Module | |||||||||||||
Tiny | font |
No | No[g 15] | Yes | ? | 2.0 | ? | ? | ? | 2.0 | Yes | 1.0 | 1.0 |
font-face |
1.0 | ? | ? | ? | Dropped[note 5] | ||||||||
glyph |
? | ? | ? | 1.0 | |||||||||
missing-glyph |
? | ? | ? | ||||||||||
Full | hkern |
Nightly build[w 12] | 2.0 | ? | ? | ? | No | ||||||
vkern |
Nightly build[w 13] | ? | ? | ? | |||||||||
font-face-src |
Yes | No | ? | ? | ? | No | |||||||
font-face-uri |
2.0 | ? | ? | ? | |||||||||
font-face-format |
No | ? | ? | ? | No | ||||||||
font-face-name |
? | ? | ? | Yes | |||||||||
Extensibility Module | |||||||||||||
Full | foreignObject |
No | 1.9 | 522 | ? | 2.0 | ? | No | 7.2 | No | No | No | No |
Profile | Element | Trident | Gecko | WebKit | Blink | Presto | KSVG | Prince XML | Amaya | Adobe SVG Viewer | Batik | Renesis |
|
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.[o 1]
-
<embed>
— Presto does not scale the image properly if its size is given in relative units. -
<embed>
,<object>
— KSVG does not scale the image properly if its size is given in relative units. -
list-style-image
— WebKit does render the image if its size is given in relative units.[w 1] - Renesis 0.7 supports that feature, but because of the rewrite of the plugin Renesis 1.0 doesn't support this any longer.[o 2]
References
- "SVG 1.1 Conformance Suite Implementation Status".
- "W3C SVG Test Suite Results — Summary results of W3C test suite on multiple browsers, different versions and browser plugins. Last updated 2011-03-24". Retrieved 2012-10-02.
- "When can I use... SVG support tables in desktop and mobile browsers". Retrieved October 2, 2012.
Trident references
- Yu, Jennifer (2010-03-18), SVG in IE9 Roadmap, Microsoft
- Internet Explorer 9 Preview Builds, Microsoft
- Internet Explorer 10 Guide, Microsoft
- 2.1.20 [SVG11] Section 16.12, Cursor Module, Microsoft
Gecko references
- "SVG in Firefox". Retrieved June 11, 2009.
- Bug 512501 - (svg11tests) We should pass all the W3C SVG 1.1 Full tests, Mozilla
- Bug 276431 - external SVG not loaded from img tag, Mozilla
- Bug 231179 - SVG images in CSS, Mozilla
- Bug 366324 - SVG site icons (favicons, shortcut icons) support, Mozilla
- Bug 272288 - Allow SVG source for <svg:image>, Mozilla
- Bug 273171 - Text 'tref' not supported, Mozilla
- Bug 456286 - should altGlyph elements fall back to behaving like tspan?, Mozilla
- "Bug 571808 - Implement altglyph". Mozilla. 13 June 2010. Retrieved 21 February 2014.
- Bug 427713 - embedded color profiles in svg are ignored, Mozilla
- Bug 177193 - Implement the 'cursor' element and the 'cursor' attribute, Mozilla
- Bug 512525 - Implement the <view> element, Mozilla
- Bug 482402 - (enablesmil) Enable "svg.smil.enabled" pref by default, Mozilla
- Bug 436418 - SVG SMIL: Implement "animateMotion", Mozilla
- Bug 436296 - SVG SMIL: implement "animateColor", Mozilla
- Bug 119490 - Implement SVG fonts, Mozilla
WebKit references
- "WebKit SVG Status". Retrieved June 17, 2007.
- "WebKit's W3C test suite results".
- Bug 16167 - SVGs with width and height 100% fail to render when used as <img> or CSS image, WebKit
- Bug 12095 - Image (and thus SVGImage and PDFDocumentImage) need size-negotiation, WebKit
- "The WebKit Open Source Project - SVG (Scalable Vector Graphics)". Retrieved 24 February 2014.
- Bug 12499 - External <use> xlink:href references do not work, WebKit
- Bug 6037 - WebKit+SVG does not support <color-profile> element, WebKit
- Bug 55361 - transform attribute for ClipPath not implemented, WebKit
- Bug 32224 - Turn on (SVG) Filters support, by default., WebKit
- Bug 5861 - feConvolveMatrix filter is not implemented, WebKit
- Bug 32197 - feDiffuseLighting filter is not implemented, WebKit
- Bug 32199 - feSpecularLighting is not implemented, WebKit
- Bug 5864 - feTurbulence is not implemented, WebKit
- Bug 38407 - SVG hkern implementation incomplete, WebKit
- Bug 38663 - SVGFont's VKern implementation missing, WebKit
Blink references
Other references
- "Batik Implementation Status". Retrieved January 11, 2008.
- "Renesis 1.1 SVG support" (PDF). Examotion GmbH. Retrieved 2008-08-04.
- SVG support in Presto: Elements, Attributes, CSS Properties, DOM Interfaces.
- See "KSVG Homepage". Archived from the original on 2011-04-22. KSVG seems to be inactive as of 2012.
- Renesis support notes (PDF), Examotion GmbH, retrieved 2008-08-04
External links
- W3C SVG Test Cases for SVG Full
- "Viewer matrix — A Comparison of the SVG-able layout engines and Plugins". wiki.svg.org. Archived from the original on 2010-03-25.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.