jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – 如何将文本放在svg路径的中心大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
为了渲染SVG我正在使用jQuery SVG插件.而且,现在我想为每个路径和多边形添加文本.在 jsFiddle,您可以看到插件生成标记.

为了创建文本,我编写了以下代码

var svgg = $("#rsr").svg('get');
var texts = svgg.createText();
svgg.textpath($("#Layer_x0020_1"),id,texts.string('We go ').
   span('up',{ dy: -30,fill: 'red' }).span(',',{ dy: 30 }).
   string(' then we go down,then up again'));

jsFiddle代码中,您可以看到textpath标记存在,但它不可见.
如何将文本添加到每个路径的中心?
谢谢.

解决方法

要将文本以直线放置在形状的顶部,请在边界框的中间显示

http://jsfiddle.net/dYuAA/114/

它只是添加了一些javascript来放置文本.

function addText(p)
{
    var t = document.createElementNS("http://www.w3.org/2000/svg","text");
    var b = p.getBBox();
    t.setAttribute("transform","translate(" + (b.x + b.width/2) + " " + (b.y + b.height/2) + ")");
    t.textContent = "a";
    t.setAttribute("fill","red");
    t.setAttribute("font-size","14");
    p.parentNode.insertBefore(t,p.nextSibling);
}

var paths = document.querySelectorAll("path");
for (var p in paths)
{
    addText(paths[p])
}

以上仅查看路径元素,但您可以调整选择器以包含您需要的任何内容.

大佬总结

以上是大佬教程为你收集整理的jquery – 如何将文本放在svg路径的中心全部内容,希望文章能够帮你解决jquery – 如何将文本放在svg路径的中心所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: