2017-02-08 16 views
0

はRTLテキストを含む次のSVGを考えてみましょう:SVGテキストの書き込み方向

<svg viewBox='0 0 1024 80' > 
 
    <rect x='1' y='1' width='1022' height='78' style='fill:#fff;stroke:#3fa9f5;'></rect> 
 
    <text style='dominant-baseline:text-before-edge;font-size:65px'>مرحبا</text> 
 
</svg>

それは次のように表示されます。 enter image description here

私はそれは次のように表示させるためにしようとしています明示的な位置指定や変換を行わずに次のようにします。 enter image description here

私が試したこと:

私はdirection属性を見ましたが、テキストが画面から消えました。 TB-RL

私の質問は、私が唯一のChromeの最新バージョンを気に、明示的なポジショニングまたは明示的な変換せずにそれを行うための方法があり、次のとおりです。

も同じ writing-modeが書き込みモードで起こったCSSを試してみましたか?

+1

もの裂孔値であるため、テキストは0、0に描画されます。明示的な位置指定や変換を介して何らかの方法で指示しない限り、1022、0には表示されません。 –

+0

@RobertLongsonはとても感謝しています。変換を行う前に可能でないことを確認したいと思っていました。フルテキストボックスを作成できました。LTR言語のサポートは変換や明示的な位置付けなしで可能でした。 RTL言語でも同じことを行います。 – Bread

答えて

1

SVGはHTMLではありません。要素は、指示する場所に配置されます。 HTMLのような自動レイアウトはありません。

direction="rtl"を使用することができますが、Robertが言うように、状況に応じて適切な位置を設定する必要があります。

<svg viewBox='0 0 1024 80' > 
 
    <rect x='1' y='1' width='1022' height='78' style='fill:#fff;stroke:#3fa9f5;'></rect> 
 
    <text style='dominant-baseline:text-before-edge;font-size:65px' x="1024" direction="rtl">مرحبا</text> 
 
</svg>

関連する問題