7-Arcmap +GDAL 切片(发布标准 Web 地图 使用)
导读:在 ArcGIS(尤其是 ArcMap 或 ArcGIS Pro)中,没有任何工具箱工具可以直接将“带布局的地图”导出为 XYZ 瓦片格式(即
{z}/{x}/{y}.png 的结构)
,因为:💡 XYZ 瓦片用于 Web 地图(如 Leaflet、OpenLayers)只支持地图数据视图(Data View),不支持布局视图(Layout View)。

一、可行的替代路径(间接导出布局为XYZ)
| 步骤 | 工具 / 方法 | 说明 |
|---|---|---|
| 1️⃣ | 导出为高分辨率 TIFF | File > Export Map,保存为 .tif,并勾选 Write World File(附坐标) |
| 2️⃣ | 切成 XYZ 瓦片 | GDAL 工具箱中的 gdal2tiles.py,命令如下:gdal2tiles.py -z 0-12 -w none layout_map.tif output_folder/ |
| ✅ | 最终获得 {z}/{x}/{y}.png |
标准 Web 地图 XYZ 瓦片格式 |
二、导出为高分辨率 TIFF(Arcmap 10.5)
1.设置数据框空间参考为EPSG:3857

2.将数据图层缩放至图层
右键图层---zoom to layer

3.导出地图 File---Export Map

4. 导出地图参数设置

5.直接保存

三、切成 XYZ 瓦片
这里我的环境为:
- python3.11 (python 3.12 对GDAL 包不是很好的支持,所以选择了3.11)
- pycharm 2025(2025支持的python版本在10 及以上)
- GDAL 3.10.1
1.新建项目,配置虚拟环境
具体参考个人前面发布的关于怎么创建虚拟环境以及安装包的博客(https://www.cnblogs.com/bltstop/p/18059286)。
这里GDAL包安装容易失败,建议通过.whl 文件安装。
首先下载GDAL-3.10.1-cp311-cp311-win_amd64.whl (若找不到下载,可博客主页联系我!!!)
下载完成后,放在虚拟环境D:\Py_proj\GDAL_enve311\.venv\Scripts下
然后在 D:\Py_proj\GDAL_enve311\.venv\Scripts目录下运行cmd
然后运行:pip install GDAL-3.10.1-cp311-cp311-win_amd64.whl 即可安装成功。

2.进行切片
第一步:在PyCharm中打开终端

第二步:对Arcmap 中导出的tif 文件:定义投影

python "D:\Py_proj\GDAL_enve311\.venv\Scripts\gdal_edit.py" -a_srs EPSG:3857 "D:/Py_proj/GDAL_enve311/png瓦片/图 39 黑河侵蚀沟人类活动结果图2.tif"
参数解释:
"D:\Py_proj\GDAL_enve311\.venv\Scripts\gdal_edit.py"是GDAL 工具的位置
"D:/Py_proj/GDAL_enve311/png瓦片/图 39 黑河侵蚀沟人类活动结果图2.tif" 是导出的tif的位置
第三步:对投影后的文件:设置背景样式为透明

python "D:\Py_proj\GDAL_enve311\.venv\Scripts\gdal_edit.py" -a_nodata 255 "D:/Py_proj/GDAL_enve311/png瓦片/图 39 黑河侵蚀沟人类活动结果图2.tif"
如果不设置背景透明,切片后的效果如下:

这不是我们想要的。
第四步:切片
python "D:\Py_proj\GDAL_enve311\.venv\Scripts\gdal2tiles.py" -z 0-12 "D:/Py_proj/GDAL_enve311/png瓦片/图 39 黑河侵蚀沟人类活动结果图2.tif" result/fig39HumanFootprint2/

参数解释:
- python "D:\Py_proj\GDAL_enve311\.venv\Scripts\gdal2tiles.py" :GDAL工具位置
- -z 0-12:缩放级别12级(可以0-18)
- "D:/Py_proj/GDAL_enve311/png瓦片/图 39 黑河侵蚀沟人类活动结果图2.tif":要切片的tif文件位置
- result/fig39HumanFootprint2/ :输出文件位置
结果:

打开其中的html文件查看渲染:

完成!

浙公网安备 33010602011771号