S.F. Page

Programming,Music,etc...

nw.jsでデスクトップアプリを作る(14) - SVG pathをgeometryに変換する(4)

SVGのデータをバウンディング・ボックス単位で分割して座標補正をかける部分の続き。

各馬のpathデータのd属性の先頭にあるm(moveTo)命令のx,y座標からバウンディング・ボックスのx,y座標を引けばよいはずである。実験のためのコードは下。

これを実行すると結果は下記のようになった。3つほど意図したとおりにならないpathがある。データを見てみるとデータの途中から絶対座標になっている部分があった。どうもInkscapeで編集している途中で混入してしまったらしい。

https://dzuqxg.dm2301.livefilestore.com/y2pC6DI3dSoXYd6rXa_JoHMJkOpVB7b5qCKn5dA7TT7_EjXasGJRSIiYWdYLkH5mKf4mMjzCLivZPx2v3HPUkXU8LJ90wKy0D0h0vYW3Gsue91TX5A6tRIDKXeIb41Cqc_W8hypq_nNMeZsAdFRI-64og/0227.png?psid=1

原因は不明だがおそらくpathデータを結合する部分のやり方がまずいのだろうと思う。どのようにすれば直るのか調べているところである。