dojo 中 getBoundingBox() 的文档说:
返回形状的边界框。文本形状是基于点的对象,因此它不定义边界框。
我不明白。任何用于 Web 的矢量图形的合理实现都包括文本对象的边界框(raphaelJS 和 jQuery SVG)!在这里,“基于点的对象”是什么意思?
我没有找到 Group 对象的边界框的参考,但是在使用最新的 Dojo 版本时,也会getBoundingbox
返回null
Groups
我可以自己轻松地为矩形制作边界框,但我需要边界框的唯一真正有问题的形状是组和文本。
我像这样结束了热补丁道场:
dojox.gfx.Text.prototype.getBoundingBox = function() { return this.rawNode.getBBox();});
dojox.gfx.Group.prototype.getBoundingBox = function() { return this.rawNode.getBBox();});
当然,这仅适用于 SVG 输出前端。
但我想知道,我错过了什么吗?有没有更好的方法来做到这一点?