【问题标题】:Using KMZ file in Leaflet Map在传单地图中使用 KMZ 文件
【发布时间】:2016-03-08 12:46:00
【问题描述】:

我必须在传单地图中使用 KMZ 文件。我找到了在 Leaflet Maps 中使用 KML 文件的好插件和教程,但找不到使用 KMZ 文件的方法。

使用 KML 的插件之一是:Leaflet-Omnivore。 对于 KML,我所要做的就是(我的传单地图在我的 ExtJs 应用程序中):

var myMap =  Ext.ComponentQuery.query("leaflet")[0];
myMap.getMap().addLayer(omnivore.kml('http://url/doc.kml'))

谁能指导我如何在 Leaflet 中使用 KMZ 而不是 KML?

如果不可能,那么有没有办法使用 JavaScript 将 KMZ 转换为 KML?

【问题讨论】:

标签: javascript leaflet kml kmz


【解决方案1】:

KMZ 文件只是一个压缩的KML file,可能带有相关的嵌入图像、图标等。

因此,任何支持 KMZ 文件的程序都会在内部解压缩它们以访问其 KML 文件。

这可能是许多开源程序在实现 KML 支持后不再支持 KMZ 的原因:您只需使用您选择的额外解压缩库即可将 KMZ 转换为 KML。

链接的帖子提供了一些基于 JavaScript 的解压缩解决方案。

【讨论】:

  • 谢谢@ghybs。这也是我在网上搜索后发现的。
【解决方案2】:

OpenLayers 3 和 Leaflet 不支持 KMZ。我将 KMZ 解析器的深度级别设置为 3,它正在建设中,但您可以使用它。 KMZ 解析正在工作。这是我的 GitHub 存储库的链接。

https://github.com/engrabid411/kmzol3

【讨论】:

  • @Suever 我想你可能没有读过他的回答。他的回答很好。他只链接到他的存储库,您可以在其中下载解析器。不是他能提供完整的源代码。
  • 谢谢@oligofren。 KMZ。
猜你喜欢
  • 2012-04-06
  • 1970-01-01
  • 1970-01-01
  • 2015-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多