Звучит так, будто листовка загружает плитки с вашего сервера плиток, но на карте, которую вы обслуживаете, нет данных о местоположении и уровне масштабирования, которые вы просматриваете. Попробуйте этот скрипт.
Пример листовки:
<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' />
Mapbox 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 для рендеринга.