谷歌地图静态api url长度超过2048字符是否有任何解决方案?目的是保存为图像

Google map static api url length is exceeding 2048 char is there any solution ? aim is to save as image

本文关键字:解决方案 任何 图像 保存 是否 url api 静态 字符 2048 谷歌地图      更新时间:2023-09-26

到目前为止,我在javascript和php中使用谷歌地图api,我在使用这些api创建数千个标记时没有问题,但我的最终目标是将它们保存为图像,所以最后我知道我必须使用静态制作api,以便将其保存为图像。,所以尝试静态地图api与很少的标记,我可以保存,但当尝试与1000的标记我没有成功,通过许多搜索在这个论坛上我知道url限制超过2048个字符,是的,这是真的。

那么是否有其他方法来保存具有数千个标记的地图?在情况下googlemap api在javascript/php我可以看到所有的标记,但无处我找到解决方案如何保存它们在本地?

这里是否有人找到了拯救的方法?比如截屏或者将地图分割的内容写入PNG/jpeg/GIF文件?

谁来帮帮我。

谢谢。

好吧,我们先来谈谈服务条款。正如一些评论者指出的那样,你不允许离线保存地图。10.1.1(h)禁止你在基于web的应用程序之外使用静态地图,除非在一些特定的情况下。Print是而不是中的一个——以防万一。第10.1.3节还说"禁止预取、缓存或存储内容",这意味着你不能把地图存储在某个地方供以后使用。出于性能考虑进行缓存是可以的。

现在假设你对这两件事都没问题,静态Maps Image API是有用的,但对你的特定用例不是真的有用。虽然您可以使用特殊的编码功能对折线进行编码,但您不能像预期的那样添加一堆标记。您可以做的一件事是下载不带标记的静态地图API图像。您知道图像和边界框的物理尺寸(lat/long)。把它转换成度数/像素很简单。您可以使用PHP图像函数将lat/lng转换为x/y像素,并手动在图像上放置标记。

只要你在你的网页中使用随后的图像输出,并且只缓存图像一段特定的短时间(又名性能原因),你应该没有问题与地图的TOS。

请注意,现在(2016年9月)URL限制已更改为8192个字符。

https://developers.google.com/maps/documentation/static-maps/intro url-size-restriction

下面是相应的特性请求

相关文章: