我正在使用LeafletJS向我的应用添加地图组件。除了地图的本地化,一切都很好,花花公子。一些国家名称以当地语言显示(我假设)。
有没有办法用英文显示国家/地区名称?
这是我使用的当前代码
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution : '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors',
noWrap : true
}).addTo(map);
答案 0 :(得分:15)
OSM的标准磁贴服务器会尝试在有此类数据时以本地语言显示标签(本地意味着当前显示的国家/地区的语言,而不是您的本地语言)。由平铺服务器提供的tiles已包含标签,因此您无法在之后删除它们。但你可以:
始终记得遵守您选择的磁贴服务器的磁贴使用策略。
答案 1 :(得分:1)
您需要做的就是使用底图而不是 openstreetmap
const mainLayer = L.tileLayer('https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}.png', {
minZoom: 3,
maxZoom: 17,
attribution: '© <a href="https://carto.com/">carto.com</a> contributors'
});
mainLayer.addTo(this.map);