0

SVG テキスト タグに問題があります。座標 x が 20 に設定され、座標 y が 80 に設定されているこの単純なコードは完璧に機能します。

<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
  <text id="test1" fill="red" x="20" y="80" font-size="30">my text</text>
</svg>

問題は、マップの実際の値を x および y 座標に および のように設定するx=1156291と発生しy=661770ます。この場合、何も表示されません (新しい座標に合わせてビューボックスを更新しました)。

何が起こっているのかを調べようとして、SVG が DOM に挿入された後、java scrip を使用してテキスト タグの x 座標と y 座標を確認しましたが、両方が (魔法のように) に変更されていることがわかりました-214748.3648

私が頭がおかしくなっているので、何が起こっているのか誰か知っていますか... x座標とy座標が大きすぎるために問題が発生したように聞こえますが、問題(1156291, 661770)なくその座標でポリラインをマップに描画できます。

助けてくれてどうもありがとう

4

1 に答える 1

0

IE9 でも同じ問題が発生します。IE9 のバグのようです。

たとえば、ノードは SVGTextElement です。

var node = svgDocument.getElementById('oneidfortext');

node.setAttribute("x", 39400);
node.setAttribute("y", 394000);

それから

var x = node.getAttribute("x");
var y = node.getAttribute("y");
//x here is going to be 39400
//y here is going to be -214748.3648

私はまだ解決策を見つけていません。

于 2013-08-19T14:49:24.457 に答える