我注意到浏览器在显示强制从右到左的文本和使用 text-anchor="end" 方面存在差异。
<?xml version="1.0" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" >
<text x="10" y="50" font-size="30" font-family="sans-serif" writing-mode="rl" direction="rtl" unicode-bidi="bidi-override" text-anchor="end" stroke="green" fill="green">
Force RTL
</text>
</svg>
在 Chrome(v 27.0.1453.93 m) 和 IE(v 9.0.8112.16421) 中,文本按我的预期显示,字形从文本的终点开始向左移动。在上面的例子中,它显示在浏览器的左上角。
在 Firefox (v 20.0.1) 中,带有 text-anchor="end" 的字形描边是从文本的起点开始的,并且显示在页面之外。如果我删除 text-anchor 属性,Firefox 会显示为 Chrome,而 IE 会使用text-anchor。
我的问题是
- 有谁明白这里发生了什么?或者这是一个FF错误?
- 如果没有解决方法,我如何在 SVG 中的用户代理之间切换,所以对于 Firefox,我可以避免使用文本锚?
非常感谢