Javascript 使用raphael生成的巨大文本

Javascript 使用raphael生成的巨大文本,javascript,svg,raphael,Javascript,Svg,Raphael,我想在多边形的中心绘制文本,并将绘制到路径值形成的多边形中。我试着用小提琴,但文字是在纸上画的,不是多边形 //for writing text var bbox = obj.getBBox(); var x = Math.floor(bbox.x + bbox.width/2.0); var y = Math.floor(bbox.y + bbox.height/2.0); alert(x + " and " + y);

我想在多边形的中心绘制文本,并将绘制到路径值形成的多边形中。我试着用小提琴,但文字是在纸上画的,不是多边形

 //for writing text
        var bbox = obj.getBBox();
        var x = Math.floor(bbox.x + bbox.width/2.0); 
        var y = Math.floor(bbox.y + bbox.height/2.0);
        alert(x + " and " + y);
        r.text(x, y, "t");

实际上,我想在中心将文本像标签一样写入多边形中!就像多边形中心的国家名称,仅此而已

我猜你的问题真的是“为什么文本这么大?”,也许是“为什么放错地方了?”。也许是这样的:


我建议避免使用如此小的视图框,因为浏览器往往存在字体非常小(小于1px)的问题。

问题到底是什么?@ErikDahlström很抱歉,您没有理解我编辑的问题,希望您能理解!文本不能适合多边形区域吗?如何使viewBox变大或任何其他解决方案?SVG不会自动布局,但在编写SVG时,您已经知道多边形区域,因此只需将文本放置在您想要的位置,它就会停留在那里。要更改viewBox,最简单的方法可能是使用矢量图形编辑器,设置新的viewBox并放大路径,直到它们适合新的viewBox。或者你可以使用。