我一直在尝试将SVG
中的地图转换为HTML
区域地图三天。我试图用SVG来做到这一点。
我尝试使用多种方法和程序转换此SVG
,但所有方法和程序都失败了。
例如: inkscape, inkscapeMap, Adobe Illustrator, Polygonator, SVGtoHTML
等等。
所以我写了自己的PHP script来完成这项工作。它工作正常,但它只转换多边形。但是SVG
中有两条路径也需要转换为多边形。我试图将这些路径转换为Illustrator和Inkscape中的多边形,但显然没有办法强制这些程序将路径转换为多边形。 (SVG
编辑可能单独决定,如果他们进行转换的话。我在SO上找到了this topic。但是我无法得到JS
的工作 - 我不知道param 示例是什么,还有更多 - 浏览器说功能createElementNS是未知的。
我能够达到的最佳结果是this HTML,但仍有两个区域丢失(因为它们在路径中的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:我希望你能理解我的英语:)