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 absolution 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)
viewBoxmust not use commas; if not width and height specified, the correct rendered image will be deformed to quadratic shape (File:Librsvg-svgfont-test.svg, File:WikiImplementationBug_T194192.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.
- 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
- Chrome and Firefox mishandle
systemLanguage: they do case sensitive comparisons instead of insensitive comparisons. Additionally, Chrome does not follow the specification and wants a space-separated list rather than a comma-separated list. Edge only looks at the first langtag and ignores the rest.
- 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); MW permits upload of
xlink:hrefattribute (SVG 1.1).
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.