Comparison of layout engines (Scalable Vector Graphics)

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Scalable Vector Graphics

The following tables compare SVG compatibility and support for a number of layout engines.

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 XML 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 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 XML 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

LeonLabs

Notes

  1. ^ 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]
  2. ^ <embed> — Presto does not scale the image properly if its size is given in relative units.
  3. ^ <embed>, <object> — KSVG does not scale the image properly if its size is given in relative units.
  4. ^ list-style-image — WebKit does render the image if its size is given in relative units.[w 1]
  5. ^ 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

  1. ^ a b c d e f g h i Yu, Jennifer (2010-03-18), SVG in IE9 Roadmap, Microsoft
  2. ^ a b c Internet Explorer 9 Preview Builds, Microsoft
  3. ^ Internet Explorer 10 Guide, Microsoft
  4. ^ 2.1.20 [SVG11] Section 16.12, Cursor Module, Microsoft

Gecko references

  • "SVG in Firefox". Retrieved June 11, 2009.
  1. ^ Bug 512501 - (svg11tests) We should pass all the W3C SVG 1.1 Full tests, Mozilla
  2. ^ Bug 276431 - external SVG not loaded from img tag, Mozilla
  3. ^ Bug 231179 - SVG images in CSS, Mozilla
  4. ^ Bug 366324 - SVG site icons (favicons, shortcut icons) support, Mozilla
  5. ^ Bug 272288 - Allow SVG source for , Mozilla
  6. ^ Bug 273171 - Text 'tref' not supported, Mozilla
  7. ^ Bug 456286 - should altGlyph elements fall back to behaving like tspan?, Mozilla
  8. ^ "Bug 571808 - Implement altglyph". Mozilla. 13 June 2010. Retrieved 21 February 2014.
  9. ^ Bug 427713 - embedded color profiles in svg are ignored, Mozilla
  10. ^ Bug 177193 - Implement the 'cursor' element and the 'cursor' attribute, Mozilla
  11. ^ Bug 512525 - Implement the element, Mozilla
  12. ^ a b Bug 482402 - (enablesmil) Enable "svg.smil.enabled" pref by default, Mozilla
  13. ^ a b Bug 436418 - SVG SMIL: Implement "animateMotion", Mozilla
  14. ^ Bug 436296 - SVG SMIL: implement "animateColor", Mozilla
  15. ^ Bug 119490 - Implement SVG fonts, Mozilla

WebKit references

  1. ^ a b Bug 16167 - SVGs with width and height 100% fail to render when used as or CSS image, WebKit
  2. ^ Bug 12095 - Image (and thus SVGImage and PDFDocumentImage) need size-negotiation, WebKit
  3. ^ "The WebKit Open Source Project - SVG (Scalable Vector Graphics)". Retrieved 24 February 2014.
  4. ^ Bug 12499 - External xlink:href references do not work, WebKit
  5. ^ Bug 6037 - WebKit+SVG does not support element, WebKit
  6. ^ Bug 55361 - transform attribute for ClipPath not implemented, WebKit
  7. ^ a b c d Bug 32224 - Turn on (SVG) Filters support, by default., WebKit
  8. ^ Bug 5861 - feConvolveMatrix filter is not implemented, WebKit
  9. ^ Bug 32197 - feDiffuseLighting filter is not implemented, WebKit
  10. ^ Bug 32199 - feSpecularLighting is not implemented, WebKit
  11. ^ Bug 5864 - feTurbulence is not implemented, WebKit
  12. ^ Bug 38407 - SVG hkern implementation incomplete, WebKit
  13. ^ 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.
  1. ^ See "KSVG Homepage". Archived from the original on 2011-04-22. KSVG seems to be inactive as of 2012.
  2. ^ 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.
Retrieved from "https://en.wikipedia.org/w/index.php?title=Comparison_of_layout_engines_(Scalable_Vector_Graphics)&oldid=863553017"
This content was retrieved from Wikipedia : http://en.wikipedia.org/wiki/Comparison_of_layout_engines_(Scalable_Vector_Graphics)
This page is based on the copyrighted Wikipedia article "Comparison of layout engines (Scalable Vector Graphics)"; it is used under the Creative Commons Attribution-ShareAlike 3.0 Unported License (CC-BY-SA). You may redistribute it, verbatim or modified, providing that you comply with the terms of the CC-BY-SA