34 lines
1.8 KiB
XML
34 lines
1.8 KiB
XML
<svg width="400" height="400" xmlns="http://www.w3.org/2000/svg">
|
||
<style>
|
||
@import url(../../fast/text/international/resources/Mac-compatible-font-fallback.css);
|
||
</style>
|
||
<g font-size="16" transform="scale(3,3)">
|
||
<!-- The order of all characters in both lines should be the same, the spacing is different due the absolute positioning in the second line -->
|
||
<text y="20" x="10 20 30 40 50">Test אבגדה</text>
|
||
|
||
<!--
|
||
Quoting SVG 1.1: Whenever the character data within a ‘tspan’ element is re-ordered, the corresponding
|
||
elements within the ‘x’, ‘y’, ‘dx’, ‘dy’ and ‘rotate’ are also re-ordered to maintain the correspondence.
|
||
|
||
The text is processed in logical order (as defined in the markup).
|
||
10 = T | LTR -> char 0
|
||
20 = e | LTR -> char 1
|
||
30 = s | LTR -> char 2
|
||
40 = t | LTR -> char 3
|
||
50 = | LTR -> char 4
|
||
88 = א | RTL -> char 9
|
||
79 = ב | RTL -> char 8
|
||
72 = ג | RTL -> char 7
|
||
64 = ד | RTL -> char 6
|
||
55 = ה | RTL -> char 5
|
||
It's rendered according to the BiDi algorithm as: Test הדגבא
|
||
The Hebrew string is reordered, and the x/y/dx/dy/rotate lists as well to maintain correspondence.
|
||
-->
|
||
<text y="40"><tspan x="10 20 30 40 50 88 79 72 64 55">Test אבגדה</tspan></text>
|
||
|
||
<text y="60" x="10 20 30 40 50">Test <tspan x="88 79 72 64 55">אבגדה</tspan></text>
|
||
|
||
<text y="80" x="10 20 30 40 50 88 79 72 64 55">Test אבגדה</text>
|
||
</g>
|
||
</svg>
|