Похоже, листовка загружает плитки с вашего сервера плиток, но карта, которую вы обслуживаете, не содержит данных о местоположении и уровне масштабирования, на которые вы смотрите. Попробуйте этот скрипт.
Пример листовки:
<script>
var map = L.map('map').
setView([lat, lon], zoom );
//OpenMapTiles
L.tileLayer('http://subdomain/styles/klokantech-basic/{z}/{x}/{y}.png', {
//tms: true,
maxZoom: 20,
attribution: 'Map data © <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>'
}).addTo(map);
</script>
Альтернативой является использование Mapbox GL JS, это отправляет рендеринг в ваш браузер и позволяет вам также использоватьtileserver-gl-light:
<script src='http://subdomain/mapbox-gl.js'></script>
<link href='http://subdomain/mapbox-gl.css' rel='stylesheet' />
Мапбокс GL JS
var map = new mapboxgl.Map({
container: 'map',
style: 'http://subdomain/styles/klokantech-basic/style.json',
center: [lon, lat],
zoom: 7
});
При создании файла mbtiles убедитесь, что вы создали его для поддержки уровня масштабирования и местоположения, которые вы установили, OpenMapTiles по умолчанию имеет уровень масштабирования 7, его может потребоваться увеличить для вашей карты, я использую 14, который поддерживает уровень масштабирования для 20 для рендеринга.
person
Guy Light
schedule
10.12.2018