Javascript getBBox()在文本元素上缺少值
我有一个Node.js项目,它使用jsdom和Raphael js在我的服务器上生成SVG标记,一切都很顺利,直到我在Raphael文本元素上调用getBBox()时开始得到缺少的值Javascript getBBox()在文本元素上缺少值,javascript,node.js,svg,raphael,jsdom,Javascript,Node.js,Svg,Raphael,Jsdom,我有一个Node.js项目,它使用jsdom和Raphael js在我的服务器上生成SVG标记,一切都很顺利,直到我在Raphael文本元素上调用getBBox()时开始得到缺少的值 var paper = window.Raphael(10, 50, 320, 200); var txt = paper.text(10, 10, 'hello world!'); console.log( txt.getBBox().toString() ); // Returns: NaN Na
var paper = window.Raphael(10, 50, 320, 200);
var txt = paper.text(10, 10, 'hello world!');
console.log( txt.getBBox().toString() ); // Returns: NaN NaN NaN × NaN
鉴于
var rect = paper.rect(10, 10, 10, 10);
console.log( rect.getBBox().toString() ); // Returns: 10 10 10 × 10
造成这种情况的原因是什么?更重要的是有修复方法吗?您应该使用RaphaelJs的
print()
方法,该方法生成一个路径数组。您可以在数组上使用getBBox()
来获取边界框。TextElement.getBBox()仅在浏览器中工作,不应在服务器端使用 你能试一下你的代码吗?我试了一下,效果如预期: