Leaflet标记:PNG或base64图像?

3

如何在leaflet地图上展示大量标记(约100个)的推荐方法?使用PNG图像还是base64图像更好?

我在leaflet文档中没有找到任何相关信息:

https://leafletjs.com/examples/custom-icons/


Base64不是一种图像格式,而是一种用于图像格式编码的编码方式。 - tadman
是的,没错。但两种解决方案都可行,所以我想选择更好的一个。 - wawanopoulos
1
“好”这个词非常主观。尝试两种方法,看看哪种对你的特定情况最有效。如果涉及到类似Webpack这样的工具,这通常是一个无意义的问题。 - tadman
1个回答

3
你想知道在Leaflet标记图标中使用外部图像文件和内联base64编码图像之间的区别。
当使用单独的文件时,浏览器会优化缓存数据。
当您的图像数据被内联时,可能会阻止这种优化,我们可以看到浏览器性能下降。请参见Leaflet issue #4968性能分析:
当加载大量标记(例如1000个)时,使用内联图像的性能明显较差。
[...]由于某种原因,使用内联图像时图层组合被延迟,整个加载需要多花费大约一秒钟的时间。
对于日常使用,这可能并不重要,但是如果您使用了大量标记,则可能很重要。
请注意,一旦您尝试显示超过几百个标记,您应该考虑使用聚类或基于单个画布的标记/图标。

只是好奇: "几百" 是多少?两百还是一千个一百? :S - Itération 122442
1
在这种情况下,我指的是三百到一千之间。请参见https://law.marquette.edu/facultyblog/2014/07/commonly-confused-words-a-couple-a-few-some-several-or-many/comment-page-1/。 - ghybs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接