HTML5 SVGに<text>
要素を配置する際に、余白を付けます。たとえば、<text>
要素の上端を10ピクセルにしたいとしましょう。これは動作しません。HTML5 SVG - テキストの配置
<svg style="height: 100px; border: 1px solid black">
<text fill="#000" x="10" y="10" font-size="50" font-family="Arial">
<tspan>The quick brown fox jumps over the lazy dog</tspan>
</text>
</svg>
問題は、SVGのテキスト要素のために、y
距離は、テキストではなく、トップの一番下の行から測定されていること、です。このコードは、下位10ピクセルのみが表示されるテキストを生成します。そこで、我々は余裕の権利を取得するためにy
値にfont-size
値を追加する必要があります。
<svg style="height: 100px; border: 1px solid black">
<text fill="#000" x="10" y="60" font-size="50" font-family="Arial">
<tspan>The quick brown fox jumps over the lazy dog</tspan>
</text>
</svg>
は、少なくとも、それは私が考えたものでした。しかし、これはどちらもうまくいかない。今、あなたはフィドルで見ることができるように、上部マージンが大きすぎます:
http://jsfiddle.net/yy8gS/2/。私は上のマージンが左のマージンと同じであることを望んでいます、それは明らかにそうではありません。実際には、
y
の値は48ですが、私はその理由や考え方がわかりません。また、この値を任意の余白やフォントサイズで計算する方法もありません。
font-size
の値は、SVGが位置決めに使用する実際のテキストの高さの値ではないようです。
誰でも私にこれを手伝ってもらえますか?私はSVGでも可能なことをしようとしていますか?
ありがとうございます!
はトリックをしました。ありがとう! – j0ker
'' '優性ベースライン:ぶら下がり;' '' –
これはまさに私が探していたものです....ありがとう!! –