从 Mapbox 中的视图生成地图

Generate map from view in Mapbox

我正在开发一个 mapbox 项目,该项目需要能够将带有样式的当前视图导出到要下载的图像中。我检查了静态地图 API,但它似乎只能在给定中心点和缩放时才能导出,而 mapbox 组件似乎只能导出 NE 和 SW 角坐标 map.getBounds()函数。将图像设置为 SVG 图像会很有帮助,但这不是必需的。

要下载PNG格式的当前地图,您可以这样做:

 map.once('load', () => {
    const a = document.createElement('a');
    a.href = map.getCanvas().toDataURL();
    a.download = 'map.png';
    document.body.appendChild(a);
    a.click();
})

https://github.com/mapbox/mapbox-gl-js/pull/6846/files 上有一个很好的例子,不幸的是它从未被合并,但它仍然是一个很好的参考,因为它还包括所需的 Mapbox 徽标和属性。