我可以text-align="middle"
在文本元素上使用以使文本居中。实际上,这只适用于 x 方向。对于 y 方向,我使用 Ian G 的技巧Aligning text in SVG。
但是,如果想要在 y 方向居中文本,但想在 x 方向左对齐文本,我该怎么办?例如,我有一个rect
-element 和一个text
位于其右侧的 -element。文本应垂直对齐以相对于矩形显示居中。因此我使用该text-align="middle"
属性。但我想在 x 方向左对齐文本(因为我想将它显示在 rect 的右侧)。那是行不通的,因为text-align
总是应用两者,x
和y
值。
实际上,我对这种垂直对齐方式并不满意,并且更喜欢其他方式。但是还没有找到更好的解决方案。(我不能使用该dominant-baseline
属性,因为我使用的是不支持它的 Batik。)我什至无法自己计算它,因为在 SVG 中我无法查询字体的上升/下降/基线.