【发布时间】:2020-05-08 04:46:23
【问题描述】:
我有一个 SVG 覆盖在 Google 地图上。 SVG 大小为 50mb,因此在浏览器中加载需要 10 秒左右。
我可以将 SVG 拆分为 171 个独立的 SVG 文件,这些文件构成了这个大 SVG。我改善加载时间的最佳策略是什么?我正在尝试以较低的缩放级别保持高分辨率。
我尝试过的事情 - 将图像转换为 PNG 和 JPG - 分辨率不够 - 优化 SVG 文件 - 仍然无法减少到足以影响加载时间的程度
我正在考虑尝试的事情 - 在页面加载时按特定顺序分层 SVG,首先是草,然后是汽车,然后是建筑物(虽然有这么多,我真的不想这样做) - 有一个名为 PolyMaps 的库,不确定这是否有帮助 - 使用 SVG 的 GZIP 格式,但我不确定实现预期结果的最佳方法是什么,或者我将如何做到这一点
基本上,我只是从在将大量 SVG 加载到谷歌地图 api/canvas 上更有经验的开发者那里寻找一些大方向
这是一个交互式地图,有自定义的信息窗口,并且已经创建(不是 svg),并且到目前为止,只使用标准标记图标(svg)。除了信息窗口和标记之外,它真的就像在地图上覆盖大量 svg 数据一样简单, 任何帮助,将不胜感激。
谢谢
【问题讨论】:
-
您能否提供small reproducible sample 或一些我们可以用来复制您的问题的代码sn-ps?
-
我最终将文件中较小的 svg 分层并完全删除了我不需要的任何较大的 svg。 - 谢谢
-
感谢链接 smga08 - SO 新手 - 欣赏 SSCCE 文章
标签: javascript html css google-maps svg