https://bugzilla.wikimedia.org/show_bug.cgi?id=55768

--- Comment #3 from Papou <[email protected]> ---
I made an experiment that is NOT the way it should be done but that shows the
general idea.
I used a fun SVG made with inkscape and containing language text layers as
described above.
<g
   inkscape:groupmode="layer"
   id="g3001"
   inkscape:label="language=en"
   style="display:none"
   sodipodi:insensitive="true">
<text ...

<g
   inkscape:groupmode="layer"
   id="g3002"
   inkscape:label="language=fr"
   style="display:none"
   sodipodi:insensitive="true">
<text ...

<g
   inkscape:groupmode="layer"
   id="g3004"
   inkscape:label="language=ru"
   style="display:none"
   sodipodi:insensitive="true">
<text ...

...

Then I ran the following command with $svglan being the wanted language
parameter
svglan=ru
perl -pe "undef $/;
s/(\"layer\".*?language=$svglan.*?display:)none/\1inline/sg" source.svg |
rsvg-convert > displayed.png

Et voilà, rsvg converts only the turned on "display:inline" layers and the
result was a PNG in the chosen language.

Now, whether all editors can produce layers that way, or if the feature should
be based on language-identified groups, I leave that discussion to persons
having a wider SVG experience than me.
This is not an SVG specification (at least so far) but a convention to build a
multilanguage SVG that Wikipedia, and hopefully other renderers, will display
as such and that people are waiting for and will welcome.

In any case, the convention could be multiple (layer or group) and if an editor
problem exists, a program like SVGTranslate could, in addition to show and make
the texts in all the languages, normalize the SVG content to comply with the
convention.

I have drawn keyboard layouts SVGs for Wikipedia and a similar problem raises.
For example, a Russian keyboard is nothing more than a QWERTY keyboard with
Cyrillic "stickers". Same for Greek.  Same for the additions that Unix makes.
Etc.
While we are at it, you might want to extend the convention to support those
features to use a single SVG to maintain instead of a ménagerie.

In short, the SVG renderer receives parameters that turn various layers on
based on their names or some ID.

Hoping to enhance Wikipedia.

André.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to