代码之家  ›  专栏  ›  技术社区  ›  Peter Becker

如何链接到KMZ文件中的内部文件?

  •  3
  • Peter Becker  · 技术社区  · 17 年前

    我想建立一个 KMZ google earth中使用的文件,其中气球内容主要在html文件中定义,这些文件使用iframes嵌入。当在本地文件系统上使用相对链接(假设文件系统访问已启用)时,安装程序将使用纯KML文件和额外的HTML文件。

    我的问题是,我找不到一种方法来创建一个包含所有文件的kmz文件。kml规范根本没有讨论这个问题(事实上,kmz在整个文档中只出现过几次)。我也找不到关于KMZ的任何其他文档。

    是否可以链接到KMZ中的其他HTML文件?如果是:怎么做?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Fraser    16 年前

    是的,kml规范允许这样做,您只需使用相对路径。

    不过,你的问题确实与安全限制有关 在特定应用中 关于某些类型的内容。

    例如,完整的google earth客户端允许您将flash(swf)内容加载到气球中,而goggle earth插件则不允许。iframed内容也一样。

    所以问题的答案完全取决于您在哪个应用程序中查看kml/kmz,而与kml或kmz规范无关。

        2
  •  1
  •   CodeMonkey    12 年前

    意识到 OGC KML Standard 以及如何在google earth软件中解释和实现该标准的规范。特别是在google earth实现的规范中,有些灰色区域没有很好地定义。管理KMZ文件和嵌入内容的规则没有很好地定义,而且显然是特定于实现的。一些细节在 Google KML Reference 文件和一些不是。KML和Google Earth的一些不一致和未记录的特性可以在 KML Errata 是的。

    对于哪些媒体内容(嵌入在kmz文件中)可以在描述气球中内联显示,以及哪些内容可以链接和访问,都有限制。

    这里有一些限制 <iframe> 中列出的内容 KMZ Tutorial

    这个 <src> 中的元素 <iframe> 元素不能指向本地 磁盘上的文件,也不能指向KMZ文件中的文件;它必须 指向浏览器可以访问的Internet上的URL。

    作为此规则的一个例外,实际上可以在kmz文件中包含一个html文件,并将其作为 <src> 中的元素 <iframe> 在具有相对URL但不支持许多其他媒体类型的功能描述中。

    如果启用“ 允许访问本地文件和个人数据 “工具/选项/常规菜单面板中的选项,这样可以放宽一些访问规则,并能够访问到内容(例如HTML、PDF等)的一些链接,就像从Web浏览器访问一样,但大多数是KMZ文件外部的本地文件。