將地圖本地化

您可以透過下列方式自訂特定國家/地區或區域的地圖:

  • 變更預設語言設定。
  • 指定區碼,根據特定國家/地區或地域調整地圖的行為。

語言本地化

根據預設,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&region=JP&language=ja&callback=initMap">
</script>

查看範例

如要設定地圖語言,請務必考慮一併設定區域,這有助於確保您的應用程式符合當地法律規定。

注意:如果您以上述方式載入 API,則無論使用者偏好設定為何,地圖一律會顯示日文。請先確定您希望這樣做,再設定這個選項。

Maps JavaScript API 也原生支援雙向文字 (Bidi),包含由左到右 (LTR) 和由右到左 (RTL) 語言的字元。舉例來說,阿拉伯文、希伯來文和波斯文就屬於由右到左語言。一般來說,如要讓網頁正常顯示由右到左語言,您必須將 dir='rtl' 加入網頁的 <html> 元素。下例使用阿拉伯文控制項轉譯埃及開羅的地圖:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&region=EG&language=ar&callback=initMap">
</script>

查看範例

查看支援語言清單。請注意,我們會經常新增語言,因此這份清單可能不完整。

區域本地化

如要修改應用程式的地圖圖塊或自訂調整 (例如根據特定區域調整地理編碼結果),您可以在載入 Maps JavaScript API 程式碼時,將 region 參數加到 <script> 標記。

對於 Maps JavaScript API 應用程式的開發人員,我們建議一律設定 region 參數。設定 region 之後,各項服務 (例如 Places Autocomplete) 通常能提供更準確的結果。 此外,針對應用程式的代管主機所在國家/地區,您有責任套用正確的區域本地化設定,確保應用程式符合當地法律規定。

region 參數接受萬國碼 (Unicode) 區域子標記 ID。一般來說,該 ID 可一對一對應至國家/地區代碼頂層網域 (ccTLD)。大多數萬國碼 (Unicode) 區域 ID 與 ISO 3166-1 alpha-2 代碼相同,但有一些需要注意的例外情況。舉例來說,英國的 ccTLD 是「uk」(對應到網域 .co.uk),而區域 ID 卻是「GB」。如需支援區域的相關資訊,請參閱 Google 地圖平台涵蓋範圍詳細資料。請試用這裡的示範,瞭解更新 region 參數時地圖上發生的變化。

舉例來說,以下指令碼標記針對英國將地圖本地化:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&region=GB&callback=initMap">
</script>

下例顯示兩張地圖,其中一張根據 region 設為 US (美國) 的值,將「Toledo」的位置編碼為「Toledo, Ohio」;另一張則根據 region 設為 ES (西班牙) 的值,將結果調整成「Toledo, Spain」。

查看美國範例西班牙範例

本地化示範

設定地圖語言時,也必須考慮設定區域。以下示範可讓您以自己選擇的語言和區域載入地圖。

全螢幕模式中查看這個示範。