javascript - Leafletjs 自定义地图,带有显示多个地图的单个图像 png 文件
问题描述
我有一个图像文件,我正在使用 Leafletjs 模块来尝试放大它,但是在执行代码时它会显示多次相同的图像。确实尝试将 noWrap 选项设置为 true,但没有任何反应。知道我该怎么做吗?
<script text="text/javascript">
var map = L.map('map', {
maxZoom: 24,
minZoom: 1,
noWrap: true,
crs: L.CRS.Simple
}).setView([0, 0], 5);
map.setMaxBounds(new L.LatLngBounds([0,2048], [2048,0]));
L.tileLayer('maps/map.png').addTo(map);
</script>
提前致谢
解决方案
找到了为什么...
我需要使用 imageOverlay 而不是 tileLayer ... https://leafletjs.com/reference-1.3.4.html#imageoverlay
<script text="text/javascript">
var map = L.map('map', {
minZoom: 1,
maxZoom: 3,
center: [0, 0],
zoom: 1,
crs: L.CRS.Simple
});
var w = 2048;
var h = 2048;
var url = 'maps/map_b_final.png';
var southWest = map.unproject([ 0, h], map.getMaxZoom()-1);
var northEast = map.unproject([ w, 0], map.getMaxZoom()-1);
var bounds = new L.LatLngBounds( southWest, northEast);
L.imageOverlay( url, bounds).addTo(map);
map.setMaxBounds(bounds);
</script>
推荐阅读
- javascript - QUnit 测试套件完成时登录到终端?
- php - 如何将数据和字符串上传到 sderver [Swift,Php]
- javascript - 如何使包装在函数中的函数代表父函数返回
- python - 使用 Pycharm 编写 gem5 配置脚本
- android - firebaseRecyclerAdapter 被填满,但不会在对话框中显示任何内容 - Android Studio
- java - Spring MVC中将表单数据中的字符串日期更改为日期日期的解决方案
- git - 删除头部分离的分支 - 我会失去头部吗?
- tensorflow - 为什么 tensorflow 的 FLOPs 是 Caffe 的 macc 的 2 倍?
- php - 用正斜杠连接变量的 PHP 字符串
- javascript - 打印 div 内容 - 崩溃