开发 地图 JS API 2.0 进阶教程 地图 多语言地图

多语言地图 最后更新时间: 2026年03月26日

本文介绍如何使用 JS API 创建多语言地图,包括:

  1. 配置英文地图,并设置左下角 Logo 的显示语言
  2. 配置比例尺控件的国际化能力(语言与公制/英制单位)
提示

多语言地图服务为高级地图能力,如需申请,请通过 工单 进行商务咨询。

英文图面效果展示

1、英文地图

1.1 准备

创建 key 并申请权限

为了正常调用 JS API ,请先注册成为高德开放平台开发者,申请 web 平台(JS API)的 key 和安全密钥 并通过 工单 开启多语言地图权限

提示

你在2021年12月02日以后申请的 key 需要配合你的安全密钥一起使用。

1.2 图面展示

请确保你的 Key 已授权多语言地图权限,在地图初始化时,配置languageCode参数即可展示多语言地图图面。下面以英文地图为例:

const map = new AMap.Map("container", {
  viewMode: "3D", //默认使用 2D 模式
  zoom: 11, //地图级别
  languageCode:"en", //设置语言
});

JS API 除了支持英文地图外,还提供了多国语言地图展示,目前已支持包括法语、日语、韩语等在内的 14 种语言。具体语言类型及配置请参考下方参数列表。

1.3 配置左下角 Logo 的显示语言

创建地图时支持通过logoLanguage控制左下角 Logo 语言版本。

const map = new AMap.Map("container", {
  viewMode: "3D", //默认使用 2D 模式
  zoom: 11, //地图级别
  languageCode:"en", //设置语言
  logoLanguage: 'en', //设置logo语言 默认:"zh"(简体中文),可选:"en"(英文)
});

2、比例尺控件国际化

本节介绍如何对比例尺控件(AMap.Scale)进行国际化配置,确保在不同语言与使用习惯下,比例尺的单位与显示效果符合预期,包括:

  1. 多语言文本切换
  2. 公制/英制单位类型切换
  3. 配置高对比度描边(提升复杂底图下的可读性)
提示

如果你没有使用过 JS API 控件,可以前往 控件基础教程

2.1 创建地图

const map = new AMap.Map("container", {
  zoom: 10, // Initialize map zoom level
  center: [103.804246, 1.400204], 
  showOversea: true,
  logoLanguage: "en",
  languageCode: "en",
});

2.2 多语言文本切换

  • 初始化配置:在创建比例尺控件(AMap.Scale)时,通过languageCode参数指定文本语言。下面以英文为例:
map.plugin(["AMap.Scale"], function () {
  scaleControl = new AMap.Scale({
    languageCode: "en", //配置比例尺控件为英文
  });
  map.addControl(scaleControl);
});
  • 运行时切换:通过setLanguageCode()方法,可动态更新比例尺语言设置:
scaleControl.setLanguageCode('en');// 切换到英文
提示

可使用getLanguageCode()获取当前比例尺控件语言代码

scaleControl.getLanguageCode(); // 获取当前语言代码

比例尺控件除了支持英文显示外,还提供了多国语言展示,具体语言类型及配置请参考下方参数列表。

2.3 公制/英制单位切换

  • 初始化配置:在创建比例尺控件(AMap.Scale)时,通过unit参数指定单位类型
map.plugin(["AMap.Scale"], function () {
  scaleControl = new AMap.Scale({
    unit: 'imperial', //配置比例尺控件展示单位,默认:"metric"(公制单位),可选:"imperial"(英制单位)
  });
  map.addControl(scaleControl);
});
  • 运行时切换:通过setUnit()方法,可动态更新比例尺单位类型设置:
scaleControl.setUnit('imperial'); // 切换到英制
提示

可使用getUnit()获取当前比例尺单位类型

scaleControl.getUnit(); // 获取当前单位类型

2.4 配置高对比度描边

  • 初始化配置:在创建比例尺控件(AMap.Scale)时,通过highContrast参数指定是否添加描边
map.plugin(["AMap.Scale"], function () {
  scaleControl = new AMap.Scale({
    highContrast: true, //默认: false 无描边
  });
  map.addControl(scaleControl);
});
  • 运行时切换:通过setHighContrast()方法,可动态更新比例尺是否添加描边
scaleControl.setHighContrast(true); // 添加描边
提示

可使用getHighContrast()获取当前比例尺是否添加描边

scaleControl.getHighContrast(); // 获取当前是否添加描边

3、本章涉及的属性及方法说明

3.1 AMap.Map

参数

类型 

说明

zoom

Number

初始化地图层级,值越大放大比例越大。可以设置为整数或浮点数(一位)

viewMode

String

初始地图视图模式。默认: 2D 。可选 3D ,选择 3D 会显示 3D 地图效果。

languageCode

String

初始化地图语言。默认:zh(简体中文)

可选 : 

en(英文)

es西班牙语

pt葡萄牙语

fr法语

de德语

th泰语

ja日语

ko韩语

ar阿拉伯语

tr土耳其语

it意大利语

ru俄语

ms马来语

id印尼语

vi越南语

logoLanguage

String

默认:zh(简体中文)

可选:en(英文)

3.2 AMap.Scale

参数

类型 

说明

languageCode

String

初始化控件语言。默认:zh(简体中文)

可选 : 

en(英文)

es西班牙语

pt葡萄牙语

fr法语

de德语

th泰语

ja日语

ko韩语

tr土耳其语

it意大利语

ru俄语

ms马来语

id印尼语

vi越南语

unit

String

配置比例尺控件展示单位,默认:metric(公制单位),可选:imperial(英制单位)

highContrast

Boolean

是否开启描变,默认: false 无描边,true:开启描边

setLanguageCode('string')

Function

设置控件语言,可选择参考上方languageCode参数介绍

getLanguageCode()

Function

获取控件当前语言

setUnit('string')

Function

设置比例尺控件展示单位,默认:metric(公制单位),可选:imperial(英制单位)

getUnit()

Function

获取比例尺控件展示单位

setHighContrast(boolean)

Function

设置是否开启描变,默认: false 无描边,true:开启描边

getHighContrast()

Function

获取是否添加描边

返回顶部 示例中心 常见问题 智能客服 公众号
二维码