Mapbox Tile Layer中的街道标签太小

Ami*_*mit 3 leaflet mapbox

我有以下Leaflet地图:JSFiddle链接

<div id="mapid" style="height: 300px;"></div>

<script>
  var mapboxTiles = L.tileLayer(mapBoxUrl, {
    attribution: attributionText
  });

  var map = L.map('mapid')
    .addLayer(mapboxTiles)
    .setView([42.888284, -78.877222], 16);

</script>
Run Code Online (Sandbox Code Playgroud)

街道标签的字体大小非常小,无法读取,放大时,字体大小会变小.有没有办法控制字体大小?

ghy*_*ybs 6

看起来你有512px大小的瓷砖,但是将地球映射为256px大小.

因此,您需要在Tile Layer上组合使用tileSizezoomOffset选项来补偿这些设置,并在tile上检索具有可读大小文本的正确视图:

var mapboxTiles = L.tileLayer(mapBoxUrl, {
  attribution: '© <a href="https://www.mapbox.com/map-feedback/">Mapbox</a> © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>',
  tileSize: 512,
  zoomOffset: -1
});
Run Code Online (Sandbox Code Playgroud)

更新了JSFiddle:https://jsfiddle.net/zq02pnpg/2/

  • 右键单击地图图块并选择"查看图像"以获得单个图块,您可以在其上获取图像属性.对于映射,仅改变图块大小使得视图在给定坐标的情况下落在完全不同的位置,这意味着还应该调整缩放. (2认同)