您可以通过下列方式针对特定国家或地区自定义地图:
- 更改默认语言设置。
- 指定区域代码,这样系统就会根据所指定的国家或地区来改变地图的运行方式。
语言本地化
默认情况下,在地图上显示控件名称、版权声明、行车路线和标签等文本信息时,Maps JavaScript API 会使用用户在浏览器中指定的首选语言设置。在大多数情况下,最好遵循浏览器的设置。不过,如果您希望 Maps JavaScript API 忽略浏览器的语言设置,可以在加载 Maps JavaScript API 代码时向 <script> 标记添加一个 language 参数,强制浏览器以特定语言显示信息。
language 参数会影响控件名称、版权声明、行车路线和控件标签,以及对服务请求的响应。但对服务的影响则不这么明显。例如,在对街道级地址进行地理编码时,系统会以您请求的语言返回国家/地区名称,但地址的其余部分则取决于您要进行地理编码的位置。另一方面,邮政和政区结果会以请求的语言返回。不妨试用
本地化演示版应用,体验一下在更新 language 参数时地图上发生的变化。
下例以日语显示地图,并将区域设置为日本:
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async®ion=JP&language=ja&callback=initMap">
</script>查看示例。
在设置地图的语言时,一定要考虑同时设置区域。这有助于确保您的应用遵守当地法律。
注意:按照上面所示的方式加载该 API 时,无论用户的偏好设置如何,地图都会为所有用户使用日语。因此,在设置此选项之前,请确保您确实希望如此。
Maps JavaScript API 还为包含左至右 (LTR) 和右至左 (RTL) 两种语言字符的双向 (Bidi) 文本提供原生支持。例如,阿拉伯语、希伯来语和波斯语就属于 RTL 语言。通常,您应该通过向页面的 <html> 元素添加 dir='rtl' 来指定页面采用 RTL 语言,以便正确渲染。下例使用阿拉伯语控件来渲染埃及开罗的地图:
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async®ion=EG&language=ar&callback=initMap">
</script>支持的语言
Google 会经常更新支持的语言。此列表并非详尽无遗,并且随时可能会发生变化。
| 语言代码 | 语言 | 语言代码 | 语言 |
|---|---|---|---|
| af | 南非荷兰语 | ja | 日语 |
| sq | 阿尔巴尼亚语 | kn | 卡纳达语 |
| am | 阿姆哈拉语 | kk | 哈萨克语 |
| ar | 阿拉伯语 | km | 高棉语 |
| hy | 亚美尼亚语 | ko | 韩语 |
| az | 阿塞拜疆语 | ky | 吉尔吉斯语 |
| eu | 巴斯克语 | lo | 老挝语 |
| be | 白俄罗斯语 | lv | 拉脱维亚语 |
| bn | 孟加拉语 | lt | 立陶宛语 |
| bs | 波斯尼亚语 | mk | 马其顿语 |
| bg | 保加利亚语 | ms | 马来语 |
| my | 缅甸语 | ml | 马拉雅拉姆语 |
| ca | 加泰罗尼亚语 | mr | 马拉地语 |
| zh | 中文 | mn | 蒙古语 |
| zh-CN | 中文(简体) | ne | 尼泊尔语 |
| zh-HK | 中文(香港) | no | 挪威语 |
| zh-TW | 中文(繁体) | pl | 波兰语 |
| hr | 克罗地亚语 | pt | 葡萄牙语 |
| cs | 捷克语 | pt-BR | 葡萄牙语(巴西) |
| da | 丹麦语 | pt-PT | 葡萄牙语(葡萄牙) |
| nl | 荷兰语 | pa | 旁遮普语 |
| en | 英语 | ro | 罗马尼亚语 |
| en-AU | 英语(澳大利亚) | ru | 俄语 |
| en-GB | 英语(英国) | sr | 塞尔维亚语(西里尔字母) |
| et | 爱沙尼亚语 | sr-Latn | 塞尔维亚语(拉丁文字) |
| fa | 波斯语 | si | 僧伽罗语 |
| fi | 芬兰语 | sk | 斯洛伐克语 |
| fil | 菲律宾语 | sl | 斯洛文尼亚语 |
| fr | 法语 | es | 西班牙语 |
| fr-CA | 法语(加拿大) | es-419 | 西班牙语(拉丁美洲) |
| gl | 加利西亚语 | sw | 斯瓦希里语 |
| ka | 格鲁吉亚语 | sv | 瑞典语 |
| de | 德语 | ta | 泰米尔语 |
| el | 希腊语 | te | 泰卢固语 |
| gu | 古吉拉特语 | th | 泰语 |
| iw | 希伯来语 | tr | 土耳其语 |
| hi | 印地语 | uk | 乌克兰语 |
| hu | 匈牙利语 | ur | 乌尔都语 |
| : | 冰岛语 | uz | 乌兹别克语 |
| id | 印度尼西亚语 | vi | 越南语 |
| it | 意大利语 | zu | 祖鲁语 |
区域本地化
如果您想更改应用以使其提供不同的地图图块,或者使应用具有偏向(例如,使地理编码结果偏向于相应区域),请在加载 Maps JavaScript API 代码时向 <script> 标记添加 region 参数。
您是 Maps JavaScript API 应用的开发者,我们建议您始终设置 region 参数,因为设置 region 后,各种服务(例如地点自动补全)往往能够提供更好的结果。您也有责任确保在部署应用的国家/地区进行正确的区域本地化,以确保您的应用符合当地法律。
region 参数接受
Unicode 地区子标记标识符,后者(通常)与国家/地区代码一级的顶级域名 (ccTLD) 存在一对一映射关系。除了某些明显的例外情况之外,大多数 Unicode 区域标识符都与 ISO 3166-1 alpha-2 代码完全一致。例如,英国的 ccTLD 为“uk”(对应于域名 .co.uk),但其区域标识符为“GB”。如需了解支持的地区,请参阅 Google Maps Platform 覆盖范围详细信息。不妨试用此演示版应用,体验一下在更新 region 参数时地图上发生的变化。
例如,以下脚本标记针对英国对地图进行了本地化:
<script async
src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async®ion=GB&callback=initMap">
</script>下面的示例显示了两张地图,一张根据设置为 US(美国)的 region 将“托莱多”地理编码为“俄亥俄州托莱多”,而另一张根据设置为 ES(西班牙)的 region 使结果偏向于“西班牙托莱多”。
本地化演示
在设置地图的语言时,一定要考虑同时设置区域。在下面的演示中,您能够以自己选择的语言和区域加载地图。
以全屏模式观看此演示。