谷歌静态地图自定义标记

问题描述 投票:2回答:1

这可能很简单,但我正在努力解决这个问题。我正在尝试使用lat/lng放置自定义标记

https://maps.googleapis.com/maps/api/staticmap?size=600x400&scale=2&markers=icon:http://chart.googleapis.com/chart?chst=d_bubble_texts_big&chld=bb%7Cffffff%7C000000%7CPL1+2|50.367285472963,-4.138801595&center=50.367285472963,-4.138801595&zoom=10

但它没有显示标记 - 我错过了什么?

标记有效:

http://chart.googleapis.com/chart?chst=d_bubble_texts_big&chld=bb%7Cffffff%7C000000%7CPL1+2

与具有默认标记的地图一样

markers=color:red|50.367285472963,-4.138801595&center=50.367285472963,-4.138801595&zoom=10

google-maps google-static-maps
1个回答
3
投票

使用自定义标记时,icon:参数应为URL编码。

由于您的图标来自Dynamic Icons Reference所述的弃用API,我将使用尽可能大的另一个自定义图像,即Dr.MolleGoogle Static Maps Reference所述

图标限制为4096像素(方形图像为64x64)

考虑我的初始标记(耶稣诞生经理的加泰罗尼亚传统):https://png.icons8.com/ios/40/000000/full-of-shit.png man pooping

我建议用goo.gl缩短它,然后对它进行URL编码(可以在http://meyerweb.com/eric/tools/dencoder/在线完成),结果是:https%3A%2F%2Fpng.icons8.com%2Fios%2F40%2F000000%2Ffull-of-shit.png,所以最终的请求看起来应该像https://maps.googleapis.com/maps/api/staticmap?size=600x400&scale=2&markers=icon:shortenedURL-Encoded|50.367285472963,-4.138801595&center=50.367285472963,-4.138801595&zoom=10

正如StackOverflow“建议”避免缩短,这里是没有缩短的版本:

© www.soinside.com 2019 - 2024. All rights reserved.