我正在构建一个解析SVG并将路径转换为相应数据层的Google Map。我遇到的一个问题是渲染道路名称,因为SVG显示未来道路。
我当前的流程需要将文本转换为轮廓,然后将路径转换为熟知文本,然后将其转换为GeoJSON。然而,有两个问题是文本出现了可怕的扭曲,任何带孔的字符(例如A和B)都被完全填充,因为它只是跟踪轮廓以创建一个多边形。
下面是SVG和渲染地图的一部分:
缺失孔的最坏情况解决方案是为每个字符创建子组,其中路径描述空区域,以便它们可以附加到几何数组。这将是一项非常乏味的任务,我怀疑这是可以自动化的。
我不知道导致失真的是什么,但我怀疑解析器没有正确读取SVG坐标。
这是其中一个文本路径的示例:
<path class="cls-11" d="M897.42,943.78l0-.79.7-.25,0-1.14-.72-.2,0-.78,3.24,1.06,0,.85Zm1.23-1.22,1.06-.38a1.4,1.4,0,0,1,.29-.06v0a1.25,1.25,0,0,1-.28,0l-1.09-.31Z"/>
我使用SVG-to-WKT和Terraformer以及一些小巧的数学来将SVG转换为GeoJSON。除了它不能补偿墨卡托投影之外,这个过程已经产生了可接受的结果。
有关我如何能够达到预期效果的想法吗?