2017-05-11 3 views
1

私は配列から文字列を出力SVGを持っている...ラップ文字列 - SVG

{"label":"This is an example of my string...", "value":4}, 

上記は、私が欲しいSVG

...など
<text>This is an example of my string...<text> 

内に出力されますしかし、これを2行にまとめるには...

This is an example 
of my string... 

これは可能ですか?


マークアップ

arcs.append("text").attr("transform", function(d){ 
      d.innerRadius = 0; 
      d.outerRadius = r; 
      d.angle = (d.startAngle + d.endAngle)/2; 
      return "rotate(" + (d.angle * 180/Math.PI - 90) + ")translate(" + (d.outerRadius -10) +")"; 
     }) 
     .attr("text-anchor", "end") 
     .text(function(d, i) { 
      return data[i].label; 
     }); 

答えて

-2

配列の文字列に "N \" を追加してください:

{"label":"This is an example\n of my string...", "value":4}, 
+0

私はそのことを申し訳ありませんでしたが、運がない – Liam

1

SVGはテキストをラップする能力がありません。現在は少なくとも...

ブラウザ環境の場合は、<foreignObject>要素を使用してSVGにHTMLを埋め込むことができます。 Auto line-wrapping in SVG textを参照してください。ただし、SVGをエクスポートする必要がある場合は、そのソリューションを使用することはできません。

純粋なSVGに固執する必要がある場合は、適切な場所で分割し、2つ以上の<text>または<tspan>要素を使用して、自分で行を折り返す必要があります。

関連する問題