Commons:Commons SVG Checker
The checks include those for the following bugs:
<image>element may use
data:image/png;base64,source, but not other internal or external sources.
- Phab:T7792, GNOME #129, GNOME #267; does not handle all
baseline-shiftattribute values. Code checks for working shifts of
superor a zero shift; complains about other shifts. As of June 2018, Edge and Firefox do not handle
supershifts. (Firefox bug report.)
- Phab:T11420, GNOME #49, GNOME #87;
textPathelement not supported. File:SVG Test TextAlign.svg
stroke-dasharrayattribute with spaces not supported (f.e. File:EKG-Reto_001.svg)
- Phab:T35245, GNOME #183;
tspanpositioning does not support a list of positions (e.g.,
x="10 15 20", File:Korrespondierende_Säure-Basen.svg)
- Phab:T43422; Cyrillic
iddo not work (ASCII only?)
- Phab:T43426, GNOME #69; HSL colors are not supported.
- Phab:T43424; SVG 1.2
flowRootelement (flowed text) not supported. Not a bug because SVG 1.2 was only a draft standard, but
flowRootis often used by Inkscape. (f.e. File:Petit_Monde_de_Gondry,_Jonze_&_Kaufman.svg, File:SVG_FAQ-FlowRoot's_bug.svg)
- Phab:T55899 (fixed 2.42.3); SVG masks do not work (f.e. File:SVG_mask.svg)
- Phab:T65236; Chinese
writing-modetop-to-bottom text does not space correctly. File:History_of_the_Universe-zh-hant.svg, File:SVG Test TextAlign.svg
- Phab:T68672, Gnome #74; SVG
styleelement must include
type="text/css"(default does not work).
- Gnome #50 (fixed 2.42 / June 2018); extraneous spaces in
rgba()values cause failure
- https://noc.wikimedia.org/conf/fc-list // 11/2015 ; only certain fonts are supported.
Other problems exist but are not checked.
- Text ignores
alignment-baselineattribute. File:SVG Test TextAlign.svg
- GNOME #249; Text with
text-anchor. For example, RTL text with an anchor of
startshould begin at the specified location and develop to the left. File:SVG Test TextAlign.svg
- Text with
text-anchorattributes must have absolute position change required by SVG 1.1. (The SVG 1.1 layout rules say an absolute position change creates a new text chunk for layout;
text-anchoris done within a text chunk. A relative position change does not create a new text chunk, so a
text-anchorchange would be ignored.)
- Text uses wrong baseline for Arabic. The Arabic baseline (e.g., ليالي العرب) is higher than the Latin baseline.
- Phab:T25643; SVG specifies font file (e.g.,
font-family="Helvetica-Bold") rather than separate family and weight (e.g.,
font-family="Helvetica" font-weight="bold"). Checker will flag the font file as an unknown font.
- Phab:T36947; There is a small font size quantization issue. File:StrekenProvincieUtrecht1.svg
- Phab:T43423; CSS child selectors are not supported by librsvg.
- Phab:T68551; CSS classes on
textelements are not inherited by child
tspanelements. If you want this, you need to add a separate class for
tspanas well, or use simply groups (but not in the text element as it Scour unfortunately does).
- Phab:T64987, Phab:T184369, Gnome #95;
font-family="'font name'"(internally quoted font family name) does not work (File:Mathematical_implication_diagram-alt.svg, File:T184369.svg)
- fonts such as "Sans" are not generating warnings despite being in a list:
xlink:hrefattribute; may not reference external resources in most elements. For example, an external resource may be referenced in
aelements, but not in
<use transform="matrix(-1 0 0 -1 0 0)" xlink:href="#a"/>does not work if it is mirrored two times (-1): File:Labanotation2.svg
<feGaussianBlur>seems to be a bit different from browsers: (f.e. File:Oxygen480-status-weather-clear-night.svg, File:Mahuri.svg, File:Pittsburgh_newspaper_consolidation_timeline.svg)
- Librsvg_bugs#Pattern on small scales (f.e. File:Pong.svg, File:Languages-Europe_edit.svg)
trefis in SVG 1.1, but it is not supported by most user agents (including
librsvg) and is removed in an SVG 2.0 candidate recommendation. See SVG 2.0, W3C Candidate Recommendation 15 September 2016, "Appendix L: Changes from SVG 1.1", https://www.w3.org/TR/SVG2/changes.html
- Phab:T88833, Gnome #108 (fixed in 2.42.3);
librsvgdoes not do the CSS 2.1 style
font-size: smaller(relative size change)
librsvgdoes not do the CSS 2.1 style
text-transform: uppercase(uppercase/lowercase/capitalize string)
- SVG 1.1(2nd)
font-variant="small-caps"not supported. File:SVG Test TextAlign.svg
- GNOME #131, GNOME #256;
systemLanguageerrs with hyphenated languages
- GNOME #88;
textLengthnot supported. File:SVG Test TextAlign.svg
- Phab:T60920 Semantics of lang parameter are confused.
- Phab:T200443 A
textelement with a
"end"may not work if there is a
yattributes followed by a #text node.
- librsvg does not render
aelement children of
- MW blocks upload of
hrefattribute (SVG 2.0) (see https://www.w3.org/Graphics/SVG/WG/wiki/Href); MW permits upload of
xlink:hrefattribute (SVG 1.1).
librsvg2-2.45.6does not like single quotation marks in functURLs that are used in, for example, gradient fills. Instead of
fill="(#ident)". See File:SVG Gradient.svg.
- Phab:T228325 GNOME #48
librsvggradient fills using
gradientUnits="userBoundingBox"(the default) in rotated user space do not work correctly. See File:SVG Gradient.svg.
The Commons SVG Checker relies on third party services. By executing a check your browser sends the usual informations attached to HTTP-requests (IP-address, User Agent, Timestamp) to a web service located at https://tools.wmflabs.org/convert/. The service is maintained by Rillke, the server by the Wikimedia Foundation. Rillke does not track these requests but they may show up (anonymized) in the error logs.