如何将自定义本地/离线地图样式应用于OpenLayers地图

时间:2018-08-04 11:07:11

标签: javascript html mapbox openlayers openmaptiles

我有一个本地网页,作为大型桌面应用程序的一部分。我想将“打开图层”贴图的默认样式更改为"Klokantech Basic"。我已经下载了JSON样式的副本,但努力将其应用于地图。目前,我的代码如下:

var map = new ol.Map({
        layers: [new ol.layer.Tile({ source: new ol.source.OSM() }), vectorLayer],
        target: 'map',
        style: './mapStyle.json',
        view: new ol.View({
            center: ol.proj.fromLonLat([-0.146953, 51.493758]),
            zoom: 15
        })

但是设置样式无效,我在网上查看了一下,似乎有Map Box,但是它使用了API密钥,我不想使用/维护它。

整个页面及其资源都存储在本地,没有API可以引用本地样式文件吗?

Here is my current code.

1 个答案:

答案 0 :(得分:0)

mapbox样式用于矢量切片源,我假装您将其用于矢量图层。

Openlayers似乎不支持MVT的Mapbox样式。它使用样式功能将其应用于矢量图块。您可以在此处exemple看到Openlayers如何制作style function用于矢量图块。