Показатели SVG и шрифтов

Есть ли какие-либо средства для получения метрик шрифта в SVG? Я хотел бы получить: спуск, восхождение, максимальную высоту, продвижение.

Мне нужно это для рисования текста и графики вместе, как в блок-схемах.

Например, мне нужно нарисовать прямоугольник вокруг текста и нарисовать линию соединителя с середины ex-size (размер буквы "x" ), а не от центра коробки.

Ответ 1

Если у вас есть доступ к DOM, существует ряд методов SVG DOM для текстовых элементов. Затем getBBox, который доступен для большинства элементов svg.

Если вы имеете дело с SVGFonts, то данные уже доступны в формате xml в качестве обычных атрибутов, например восхождение, спуск и т.д.

Для вашего прецедента я бы рекомендовал getBBox, так как он может иметь дело с графическими элементами тоже (если вы когда-либо захотите добавить больше вещей, чем просто текст в диаграммы).