2

我想获得拉斐尔生成文本的宽度,包括空格键的空间。然而,我发现

text=Canvas.paper.text(wordPos, linePos, word).attr({"font-size": fontSize,
                    "font-weight":TextParams.fontWeight, "fill":TextParams.color, "text-anchor":"start"});
console.log('text.getBBox().width (w/o space)='+text.getBBox().width);
word+=' ';
text=Canvas.paper.text(wordPos, linePos, word).attr({"font-size": fontSize,
                    "font-weight":TextParams.fontWeight, "fill":TextParams.color, "text-anchor":"start"});
console.log('text.getBBox().width (with space)='+text.getBBox().width);

返回

text.getBBox().width (w/o space)=51.125
text.getBBox().width (with space)=51.125

有没有办法获得包括空格在内的文本宽度?

4

1 回答 1

1

字符串开头或结尾的空格在 HTML 文本中被剪掉,我假设 Raphael 生成的 SVG 文本也会发生同样的情况。您可以尝试使用 HTML 实体, 而不仅仅是空格键空间。不确定 Raphael 和 SVG 是否接受 HTML 实体

于 2013-05-02T01:47:14.447 回答