0

私は3日間、マップをSVGエリアマップに変換しようとしています。私はこのSVGHTMLでそれをやろうとしています。

これSVGをいくつかのメソッドとプログラムで変換しようとしましたが、すべて失敗しました。 例: inkscape, inkscapeMap, Adobe Illustrator, Polygonator, SVGtoHTMLなど。

そこで、私はその仕事をするために自分のPHPスクリプトを書きました。正常に動作しますが、変換されるのはポリゴンのみです。SVGただし、ポリゴンに変換する必要のあるパスが2つあります。IllustratorとInkscapeでこれらのパスをポリゴンに変換しようとしましたが、これらのプログラムにパスをポリゴンに変換させる方法がないようです。(SVG編集者は、変換を行うかどうかを、おそらく単独で決定します)。私はこのトピックをSOで見つけました。しかし、私はJS仕事を得ることができません-私はparamサンプルが何であるかを知りません、そしてもっと-ブラウザは関数createElementNSが不明であると言いました。

私が到達できる最良の結果はこのHTMLですが、まだ2つの領域が欠落しています(パスのSVGにあるため)

手がかりがあれば嬉しいです。

質問

1)SVGパスをポリゴンに変換する方法は?それは可能ですか?

2)SVGをHTMLエリアマップに変換するソフトウェアはありますか?

3)このJS関数(Phrogzで記述された関数)で、私の例のパラメーターを示していただけますか?

function polygonSampledFromPath(path,samples){
  var doc = path.ownerDocument;
  var poly = doc.createElementNS('http://www.w3.org/2000/svg','polygon');

  var points = [];
  var len  = path.getTotalLength();
  var step = step=len/samples;
  for (var i=0;i<=len;i+=step){
    var p = path.getPointAtLength(i);
    points.push( p.x+','+p.y );
  }
  poly.setAttribute('points',points.join(' '));
  return poly;
}

3ad)なぜ機能がcreateElementNS不明なのですか?

PS:私の英語を理解していただければ幸いです:)

4

0 に答える 0