【HMWeb】HTML使用Leaflet实现本地离线地图Gis应用

下载Leaflet

官网下载:https://leafletjs.com/reference.html

CSDN:https://download.csdn.net/download/hmxm6/89291989

选择版本号

添加html文件

加入代码

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>test</title>

    <!-- 引入 文件 -->
    <link rel="stylesheet" href="leaflet.css" />
    <link rel="stylesheet" href="img.css" />
    <script src="leaflet.js"></script>
    <!-- 增加地图高度 -->
    <style>
        html,body,#view{
            width: 100%;
            height: 100%;
            overflow-y: hidden;
            overflow-x: hidden;
            display: flex;
        }

        #mapDiv { 
            width: 100%;
            height: 100%; 
            position: fixed;
            left: 0;
            top: 0;
        }
    </style>
</head>
<body>
    <div id="View">
        <div id="mapDiv"></div>
    </div>
</body>
<script>
    let map = L.map("mapDiv", {
        minZoom: 10,
        maxZoom: 17,
        center: [36.635712, 120.768945],
        zoom: 13,
        zoomDelta: 0.5,
        fullscreenControl: false,
        zoomControl: false,
        attributionControl: false
    });

    var MarkArray = new Array(); // 地图点数组
    var MarkArrayTimeOut;
    var ClickBZMessage = null;


    let url = "http://webrd0{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}";
    
    this.baseLayer=L.tileLayer(url,{
        attribution: '',
        minZoom: 10,
        maxZoom: 17,
        subdomains: "1234"
    });

    this.map.addLayer(this.baseLayer);

    L.control.zoom();


</script>
</html>

其中map里面

minZoom: 最小缩放

maxZoom: 最大缩放

center: 地图初始点

下载离线地图

下载软件

https://download.csdn.net/download/hmxm6/89292287

打开软件,设置下载地图类型和位置

选择层级,选择地图存放路径,点击下载

然后把地图地址替换成下载的地址

url = ".../map/{z}/{x}/{y}/tile.png";

打开浏览器就可以看到地图了

相关推荐
LinXunFeng6 小时前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github
乘风gg9 小时前
为什么AI 时代来临,大部分人吃不到红利
前端·ai编程·claude
恋猫de小郭10 小时前
Android 限制侧载新进展,谷歌联合国内厂商推验证计划
android·前端·flutter
IT_陈寒10 小时前
Redis内存爆了,原来我漏掉了这个致命配置
前端·人工智能·后端
恋猫de小郭10 小时前
解读 Android 17 全新内存限制,有没有“豁免”后门?
android·前端·flutter
Hyyy11 小时前
理解LLM的基本工作原理:预训练、微调、推理的区别
前端
Gatlin12 小时前
前端逆向与反逆向:一场猫鼠游戏的底层逻辑与实战
前端
Pedantic12 小时前
本地通知(Local Notifications)学习笔记
前端
森蓝情丶12 小时前
我给 AI 搭了个法庭:一个前端仔的 LangGraph 实战全记录
前端·后端
爱勇宝13 小时前
干了近 8 年,一夜之间被裁:AI 时代,程序员最该害怕的不是 AI
前端·后端·程序员