Username or display name (will be displayed publicly): JoKalliauer, <Looking for help>
Categories/Tags/Keywords (up to 5):
Session type :
- Discussion (including Q/A) - 55 mins
- I need a Jitsi room for the session
When are you available to have the session?
21.05. 16UTC-22UTC https://www.worldtimebuddy.com/?qm=1&lid=2761369,524901,1816670&h=2761369&date=2021-5-21&sln=18-24&hf=0
22.05. 6UTC-22UTC https://www.worldtimebuddy.com/?qm=1&lid=2761369,524901,1816670&h=2761369&date=2021-5-22&sln=8-24&hf=0
23.05. 6UTC-18UTC https://www.worldtimebuddy.com/?qm=1&lid=2761369,524901,1816670&h=2761369&date=2021-5-23&sln=8-20&hf=0
Short description of the session (179 words):
Wikimedia re-evaluates the renderer in T40010, however it's a complex topic with pros and cons for each render. And the SVG-Commons-Community needs a render that can handle svg-features such as textPath.
To make a decision about a new renderer based on data, I made some independent svg-bechmarks between librsvg 2.50/resvg/Inkscape/batik reported at Commons , containing time-benchmarks, correctness-benchmarks, rendering-comparisons of >1000s of svg-images, ... . In 7 out of 7 categories resvg won; resvg is a fast renderer with good SVG 1.1-support. However there are open questions, e.g. how to treat/value the draft of SVG 2.0 (e.g. SVG 1.2 got deprecated) or how measure time fairly (should we set a time-out-limit, that influences also the correctnessratio) . Inkscape-Editors often like Inkscape as a render, however Inkscape priorizes additional features over correct rendering (ref), leading to invalid svgs that cannot be edited by anything else than inkscape.
From the currently reported librsvg2.40-bugs resvg fixes 45 of 51, inkscape fixes 40 of 51 and librsvg 2.50 fixes 28 of 51 tasks, see details, a comparision of all supported features can checked here.
- WMF-developers (To understand why the processes is stuck, since years.)
- SVG-Editors/Wikimedians (Discuss which svg-features are most important.)
- librsvg/resvg/Inkscape/batik-developer (Which pros&cons they see.)
What will participants get out of this session? (41 words)
It should be clear what are the boundary-conditions (e.g. are headless browsers an alternative?), for a benchmark.
The Commons-Communtiy & SVG-Editors should understand the advantages and disavantages that the differnet options.
The WMF-Developers should know what (and why) the Community wants/needs.
(Optional) Additional resources:
- T40010 RFC: Re-evaluate librsvg as SVG renderer on Wikimedia wikis
- librsvg-developer about librsvg 2.40
- svg-feature-support-table between resvg/Chrome/Firefox/Batik/Inkscape/librsvg/...
- Wikipedia about librsvg 2.40-bugs
- table of wikimedia-svg-rendering-tasks, most important ones listed below (I try to not link them to this issue)
- T 265549 Update librsvg to > 2.44.10
- T 193352 Update librsvg to ≥2.42.3 (2.44.10)
- unresolved upstream (selection out of 20 tasks)
- T 11420 textPath is not supported by librsvg
- T 36947 Incorrect text positioning in SVG rasterization (scale/transform; font-size; kerning)
- T 205776 Punjabi letters in SVG files have unnecessary spacing in their corresponding PNG thumbnails
- T 142908 bad kerning of SVG-Rendering of diacritical marks as unicode characters
- T 20463 SVG thumbnailing issues - part of the image with <pattern> not rendered
- T 154237 SVG image wikisyntax can't use "lang=zh-hant"
- T 261192 Rendering multilingual (systemLanguage) SVG files fails locally after upgrading librsvg from 2.40.21 to 2.44.10
- T 65236 Chinese text in SVG files misplaced and clustered
- T 15387 SVG: Missing implementation for textLength
- T 193942 fill using radialGradient not rendered
- fixed in librsvg 2.50 (selection out of 27 tasks)
- T 217990 arc flags without space
- T 276684 direct clone of a clone not displayed
- T 32033 stroke-dasharray in PNG thumbnails does not support spaces as separators
- T 207506 librsvg does not shift from bold to normal font-weight
- T 246366 update librsvg for correct dash-density
- T 7792 rsvg does not render baseline-shift correctly (<percentage> and <length>)
- T 55899 SVG masks fail to render (or even display)