2009-05-06 9 views
3

Google Earthで使用するKMZファイルを設定しようとしていますが、バルーンのコンテンツはほとんどがiframeを使用して埋め込まれたHTMLファイルで定義されています。この設定は、ローカルファイルシステム上の相対リンクを使用する場合(ファイルシステムアクセスが有効であると仮定して)、プレーンなKMLファイルと追加のHTMLファイルで動作します。KMZファイルの内部ファイルにリンクするにはどうすればよいですか?

私の問題は、すべてのファイルを含むKMZファイルを連動して作成する方法が見つからないということです。 KMLの仕様では、この問題については何も言及していません(実際、KMZは文書全体に数回出現しています)。私はKMZの他のドキュメントも見つけられませんでした。

KMZ内の他のHTMLファイルにリンクすることはできますか?はいの場合:どのように?

+0

相対パスが機能しなくなる原因はわかりません。作業中のkmlディレクトリをkmzファイルに圧縮してみましたか? – user57368

+0

はい、ルートフォルダとなしの両方で - すべてのiframeがただ空になります –

+0

Kmz内のファイルの「読み取り専用」フラグのチェックを外してみます。 – Fraser

答えて

1

はい、Kml仕様ではこれが可能です。相対パスを使用するだけです。

特定の種類のコンテンツについては、セキュリティ制限と実際には特定のアプリケーションの問題が関係しています。

たとえば、完全なGoogle Earthクライアントでは、Flash(swf)のコンテンツをバルーンに読み込むことができますが、ゴーグルアースプラグインにはバルーンをロードできません。同じことがiFramedコンテンツなどにも当てはまります。

したがって、質問に対する回答は、どのアプリケーションがKml/kmzを表示しているかによって異なり、KmlまたはKmz仕様とは関係ありません。

1

OGC KML Standardがあり、その標準の仕様がどのように解釈され、Google Earthソフトウェアに実装されているかを理解してください。特に、グーグルアースが実装している仕様には明確に定義されていないグレーの領域があります。 KMZファイルと埋め込みコンテンツを管理するルールは明確に定義されておらず、明確な実装固有のものです。詳細の一部はGoogle KML Referenceのドキュメントで定義されており、一部はそうではありません。 KML ErrataにKMLとGoogle Earthの一部の不一致と文書化されていない機能があります。

説明バルーン内にインラインで表示できるメディアコンテンツ(KMZファイル内に埋め込まれている)と、どのコンテンツをリンクしてアクセスできるかの両方に制限があります。ここで

は要素内<src>要素は、ディスク上のローカル ファイルを指すことができない、またそれは、KMZファイル内のファイルを指すことができKMZ Tutorial

に記載されているコンテンツのためのいくつかの制限があります。 は、ブラウザ上でアクセスできるインターネット上のURLを指している必要があります。あなたが実際にKMZファイル内のHTMLファイルを持っていると相対URLと機能の説明に内<src>要素としてではなく、他の多くのメディアタイプがサポートされていないことを含むことができ、この規則の例外として

ツール/オプション/全般メニューパネルで "ローカルファイルと個人データへのアクセスを許可する"オプションを有効にすると、いくつかのアクセスルールが緩和され、コンテンツへのリンク(HTML、PDF、 KMZファイルの外部にあるほとんどのローカルファイル)を使用することができます。

関連する問題