dojox.gfx ограничивающий прямоугольник для узлов Text и Group

StackOverflow https://stackoverflow.com/questions/1612831

Вопрос

Документация по getBoundingBox () в dojo гласит:

  

Возвращает ограничивающий прямоугольник формы.   Форма текста является точечным объектом, поэтому   он не определяет ограничивающий прямоугольник.

Я не понимаю. Любая вменяемая реализация векторной графики для веб-сайтов включает в себя ограничивающую рамку для текстовых объектов (это RaphaelJS и jQuery SVG)! Здесь, что означает «объект на основе точек»; означает?

Я не нашел ссылки на ограничивающий прямоугольник для объекта Group, но при использовании последней версии Dojo getBoundingbox возвращает null для групп

Я легко могу сделать ограничивающий прямоугольник для прямоугольника, но единственные действительно проблемные фигуры, для которых мне нужен ограничивающий прямоугольник, - это группа и текст.

Я закончил додзё горячего патча как:

dojox.gfx.Text.prototype.getBoundingBox = function() { return this.rawNode.getBBox();});
dojox.gfx.Group.prototype.getBoundingBox = function() { return this.rawNode.getBBox();});

Что, конечно, будет работать только для выходного интерфейса SVG.

Но мне интересно, я что-то упустил? Есть ли лучший способ сделать это?

Это было полезно?

Решение

  

Я не нашел ссылки на ограничивающий прямоугольник для объекта Group, но при использовании последней версии Dojo getBoundingbox также возвращает null для групп

Связана ли эта проблема с этим исправлением ошибки ? Похоже, это для меня. Это было изменено 7 месяцев назад pruzand и помечено как исправленное

http://bugs.dojotoolkit.org/ticket/7019

Обновление 2012-07-24: я загрузил release-1.8.0rc1 и установить то же самое тест в разрешенном билете. Это действительно было исправлено в 1.8, и getBoundingBox, возвращающий null для групп, разрешается, как указано в заявке. Тестовый скрипт успешно возвращает:

bbox of group: {"x":0,"y":2,"endX":238,"endY":379,"width":238,"height":377}
transformed bbox: [{"x":277.7302117816355,"y":152.5448441073243},{"x":512.114456998541,"y":193.87311039205372},{"x":446.64909401810826,"y":565.1456332776561},{"x":212.26484880120276,"y":523.8173669929267}]

Кроме того, в соответствии с этим постом в Твиттере , версия 1.8 должна быть выпущена. через неделю или две.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top