Gmaps4rails - 如何设置地图语言
Gmaps4rails - how to set map language
我想对 Gmaps4rails 生成的地图进行本地化,这样我就可以用用户所需的语言显示地名。 Google 在此处记录如何执行此操作:https://developers.google.com/maps/documentation/javascript/examples/map-language
我正在使用 Gmaps4rails 的一个相当标准的(目前功能正常的)实现,您可以在此处看到。
handler = Gmaps.build('Google');
handler.buildMap({
provider: { styles: mapStyle },
internal: {id: 'map'}
}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
});
渲染到 html...
<div class="map-container">
<div id="map"></div>
</div>
我只需要找出在哪里定义语言代码。我试过将它作为提供者的选项添加,但没有任何乐趣(例如 provider: { styles: mapStyle, language: 'zh-TW' }
)。
我已经搜索了文档(和来源),但似乎找不到任何相关信息。如有任何帮助,我们将不胜感激!
您必须在脚本中指明语言。
例如在Maps API v3 Now Speaks Your Language中:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=pt-BR">
您可以在此处找到 languages 的列表。
这是代码示例:
<!DOCTYPE html>
<html>
<head>
<title>Localizing the Map</title>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<style>
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
}
</style>
</head>
<body>
<div id="map"></div>
<script>
// This example displays a map with the language and region set
// to Japan. These settings are specified in the HTML script element
// when loading the Google Maps JavaScript API.
// Setting the language shows the map in the language of your choice.
// Setting the region biases the geocoding results to that region.
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 8,
center: {lat: 35.717, lng: 139.731}
});
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap&language=ja®ion=JP"
async defer>
</script>
</body>
</html>
如您在此代码行中所见,key=YOUR_API_KEY&callback=initMap&
language=ja
®ion=JP
,语言设置为 jp = 日语.
同时使用动态语言设置检查他们的工作 sample。
希望对您有所帮助!
我想对 Gmaps4rails 生成的地图进行本地化,这样我就可以用用户所需的语言显示地名。 Google 在此处记录如何执行此操作:https://developers.google.com/maps/documentation/javascript/examples/map-language
我正在使用 Gmaps4rails 的一个相当标准的(目前功能正常的)实现,您可以在此处看到。
handler = Gmaps.build('Google');
handler.buildMap({
provider: { styles: mapStyle },
internal: {id: 'map'}
}, function(){
markers = handler.addMarkers(<%=raw @hash.to_json %>);
handler.bounds.extendWith(markers);
handler.fitMapToBounds();
});
渲染到 html...
<div class="map-container">
<div id="map"></div>
</div>
我只需要找出在哪里定义语言代码。我试过将它作为提供者的选项添加,但没有任何乐趣(例如 provider: { styles: mapStyle, language: 'zh-TW' }
)。
我已经搜索了文档(和来源),但似乎找不到任何相关信息。如有任何帮助,我们将不胜感激!
您必须在脚本中指明语言。
例如在Maps API v3 Now Speaks Your Language中:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false&language=pt-BR">
您可以在此处找到 languages 的列表。
这是代码示例:
<!DOCTYPE html>
<html>
<head>
<title>Localizing the Map</title>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta charset="utf-8">
<style>
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
}
</style>
</head>
<body>
<div id="map"></div>
<script>
// This example displays a map with the language and region set
// to Japan. These settings are specified in the HTML script element
// when loading the Google Maps JavaScript API.
// Setting the language shows the map in the language of your choice.
// Setting the region biases the geocoding results to that region.
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 8,
center: {lat: 35.717, lng: 139.731}
});
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&callback=initMap&language=ja®ion=JP"
async defer>
</script>
</body>
</html>
如您在此代码行中所见,key=YOUR_API_KEY&callback=initMap&
language=ja
®ion=JP
,语言设置为 jp = 日语.
同时使用动态语言设置检查他们的工作 sample。
希望对您有所帮助!