【问题标题】:How to zoom in browser with leaflet without server support如何在没有服务器支持的情况下使用传单放大浏览器
【发布时间】:2019-02-13 18:44:41
【问题描述】:

我自制了一个小型地图服务器(仅包含一些图片(平铺 256x256 像素))。

它是使用固定缩放制作的(仅 12 级)。

现在它工作正常,我也想要缩放。 ;-)

现在我想知道我是否只能放大浏览器(带有传单)... 所以只需使用给定的图块而不加载更高细节的图块。

我知道,浏览器会有更多延迟。但这不是问题。这只是一张仅供私人使用的小地图。

var mymap = L.map( 'mapid' ).fitWorld().setView( [ uriparm( 'lat' ) || 0, uriparm( 'lon' ) || 0 ], 12 );

L.tileLayer( 'getbox.php?folder={id}&lz={z}&lx={x}&ly={y}&lid={id}&ld=1', {
    maxZoom: 12,
    minZoom: 12,
    attribution: '',
    id: test
} ).addTo( mymap );

【问题讨论】:

标签: javascript leaflet


【解决方案1】:

利用L.TileLayerminNativeZoom and maxNativeZoom 选项。引用文档:

maxNativeZoom

平铺源可用的最大缩放数。如果指定,则所有高于maxNativeZoom 的缩放级别的图块将从maxNativeZoom 级别加载并自动缩放。

minNativeZoom 同上)

因此,如果您的图块服务器只有 12 级图块,您应该尝试以下操作:

L.tileLayer( 'getbox.php?folder={id}&lz={z}&lx={x}&ly={y}&lid={id}&ld=1', {
    maxNativeZoom: 12,
    minNativeZoom: 12,
    maxZoom: 14,
    minZoom: 10,
    attribution: '',
    id: test
} ).addTo( mymap );

随意尝试一下这些值,但请注意,minZoomminNativeZoom 之间的巨大差异会导致您的浏览器尝试加载几百万个图块,并且很可能会崩溃。

【讨论】:

  • 哦...我在文档中忽略了它 - 我认为 ~ 很棒 - 工作(有点滞后)精彩 - 非常感谢 :-)
猜你喜欢
  • 2013-05-02
  • 1970-01-01
  • 2011-12-18
  • 1970-01-01
  • 2011-08-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-13
相关资源
最近更新 更多