Как я могу получить координаты x / y SVG-элемента (path etc), у которого нет атрибутов X / Y?

#javascript #dom #svg #position

#javascript #dom #svg #позиция

Вопрос:

Я пытаюсь получить положение элементов SVG с помощью Javascript. Мне удалось получить положение элементов, для которых установлен атрибут X / Y. Но элементы, такие как paths, не имеют этого атрибута.. По крайней мере, не в моих документах.

Есть ли способ вычислить позицию, отличный от использования первого числа в «path»?

Спасибо, Мортен

Ответ №1:

Вы можете использовать функцию getBBox() , чтобы получить ограничивающую рамку для пути. Это даст вам положение и размер самого узкого прямоугольника, который может содержать отображаемый путь.

Преимущество использования этого метода перед чтением значений x и y заключается в том, что он будет работать со всеми графическими объектами. Существует больше объектов, чем путей, у которых нет x и y, например окружностей, вместо которых есть cx и cy.

Ссылка: getBBox() в стандарте SVG версии v1.1.