0
私はこれは私が試したものです、スナップが作成したSVGに動的にテキストを配置しようとしている:Snap.svgとダイナミックテキスト
this.setContent(
`<svg id="${this.svgId}"></svg>`
);
var snap = Snap($(`#${this.svgId}`)[0]);
text = "asdfsdfsdsfd";
var rect = snap.paper.rect(0, 0, 50, text.length*3 + 4, 10);
snap.text(1.5,10, text);
console.log("rect", rect);
console.log("snap", snap);
rect.attr({
fill: "#FFFFFF",
fillOpacity: 0.6,
});
を私は長方形をしたいですテキストより少し大きめですが、テキストの長さと高さを計算するよりも良い方法があります。これは、フォントサイズが変わらないと仮定しています。 http://snapsvg.io/docs/#Paper.text
「s」とは何ですか?スナップオブジェクト? – shinzou
これはあなたのペーパーまたはsvgです。通常、s = Snap( '#mysvgcontainer')またはs = Snap(800,800)またはそれを設定するものです。あなたの例では、もしあなたがその両方を使ったようにスナップまたはスナップペーパーであるかどうかはわかりません。 – Ian
どうやらドキュメントが混乱していました。どうすればその長方形を 'var snap = Snap($('#$ {this.svgId} ')[;])に置くことができますか? – shinzou