SVG 和字体规格

发布于 2024-09-10 20:09:42 字数 155 浏览 2 评论 0原文

有什么方法可以获取 SVG 中的字体规格吗? 我想要得到:下降、上升、最大高度、前进。

我需要这个来绘制文本和像流程图一样将图形组合在一起。

例如,我需要在文本周围绘制一个框,并从 ex-size(字母“x”的大小)的中间绘制连接线,而不是从框侧的中心绘制连接线。

Is there any means to get font metrics in SVG?
I'd like to get: descent, ascent, max height, advance.

I need this for drawing text & graphics together like in flowcharts.

For example, I need to draw a box around text, and to draw a connector line from the middle of ex-size(size of letter 'x'), and not from the center of the box side.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

吾性傲以野 2024-09-17 20:09:42

如果您具有 DOM 访问权限,那么有许多用于文本元素的 SVG DOM 方法。然后是 getBBox 方法,该方法可用于大多数 svg 元素。

如果您正在处理 SVGFonts,那么数据已经可以作为普通属性以 xml 格式提供,例如 上升、下降 等。

对于您的用例,我建议使用 getBBox,因为它也可以处理图形元素(如果您想要添加更多东西,而不仅仅是图表中的文本)。

If you have DOM access then there are a number of SVG DOM methods for text elements. Then there's the getBBox method which is available on most svg elements.

If you're dealing with SVGFonts, then the data is already available in xml format as normal attributes, e.g ascent, descent etc.

For your use-case I'd recommend getBBox, since it can deal with graphic elements too (in case you ever want to add more things than just text to the charts).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文