如何让导入My Google Maps的KMZ文件Placemark描述图片正常显示?
KMZ导入My Google Maps时本地图片无法显示?解决方案看这里
我懂你遇到的糟心问题——做了带本地图片的KMZ,在Google Earth Desktop里显示好好的,一导入My Maps就变成黑块;但手动在My Maps上传图片后导出的KMZ,却能用Google托管的外链正常显示图片。咱们来拆解下原因和可行的解决办法:
为啥会出现这种差异?
- Google Earth Desktop是本地应用,能直接读取KMZ压缩包内的所有资源(包括你打包进去的
image.jpg),所以本地路径能正常解析。 - 但My Maps是网页应用,它不支持加载KMZ包内的本地图片,只认公开可访问的网络URL。这就是手动上传后生成的Google托管外链能正常显示,而你写的本地路径不行的核心原因。
能不能让My Maps导入KMZ时自动托管图片?
遗憾的是,目前My Maps没有这个功能。当你导入KMZ时,它只会解析KML的结构信息,不会主动提取包里的图片上传到Google服务器,所以本地图片路径自然无法被识别,只能显示黑色占位符。
可行的解决方案,给你三个选项:
1. 先传图片到图床,替换KML里的链接
这是最直接的办法:
- 把KMZ里的
image.jpg上传到Google相册(或其他支持公开外链的图床),确保图片能通过公开URL访问。 - 打开你的
main.kml,把图片链接替换成公开URL,比如:<![CDATA[<img src="https://lh3.googleusercontent.com/你的图片专属ID" width='600' />]]> - 重新打包成KMZ(此时图片已在云端,KMZ里可以不用再打包图片),再导入My Maps,图片就能正常显示了。
2. 用Google Earth当“中转工具”
利用Google Earth和My Maps的同步特性:
- 先把你的KMZ导入Google Earth Desktop,确认图片显示正常。
- 在Google Earth里把这个地标添加到「我的地点」,并同步到你的Google账户。
- 打开My Maps,导入Google Earth同步过来的图层——这时候Google Earth已经帮你把图片上传到Google服务器,My Maps就能识别对应的外链,图片自然正常显示。
3. 手动补传图片(适合地标数量少的情况)
如果你的Placemark数量不多,可以先导入不带图片的KMZ到My Maps,然后逐个编辑每个Placemark,手动上传图片。这种方式虽然繁琐,但能保证图片自动生成Google托管的外链,显示完全正常。
内容的提问来源于stack exchange,提问作者Jan Zikmund
相关产品推荐
相关产品推荐

