地図のローカライズ

特定の国またはリージョンに合わせて地図をカスタマイズできます。その方法は次のとおりです。

  • 既定の言語設定を変更する。
  • リージョン コードを指定する。指定した国または地域に応じて地図の動作が変わります。

言語のローカライズ

デフォルトでは、Maps JavaScript API はブラウザで指定されたユーザーの優先言語設定を使用して、コントロール名や著作権表示、運転ルート、ラベルなどのテキスト情報を地図に表示します。ほとんどの場合、ブラウザの設定を反映することをおすすめします。ただし、Maps JavaScript API でブラウザの言語設定を無視したい場合、強制的に特定の言語で情報を表示することができます。そのためには、Maps JavaScript API のコードを読み込む際に、language パラメータを <script> タグに追加します。

language パラメータは、コントロール名、著作権表示、運転ルート、コントロール ラベル、サービス リクエストへのレスポンスに影響します。ただし、サービスへの影響はそれほど明白ではありません。たとえば、番地レベルの住所をジオコーディングした場合は、国名はリクエストされた言語で返されますが、住所の残りの部分はジオコーディング対象の場所に固有のものになります。一方、郵便番号と行政区画の結果は、リクエストされた言語で返されます。 こちらのデモで、language パラメータの更新による地図の変化をお試しください。

次のサンプルは、日本語で地図を表示し、リージョンを日本に設定しています。

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

サンプルを表示

地図の言語を設定する場合、リージョンの設定も考慮することが重要です。これにより、アプリケーションを地域の法律に遵守させることができます。

注: 上のサンプルのように API を読み込むと、ユーザーが設定した言語にかかわらず、地図ですべてのユーザーに対して日本語が使用されます。このオプションは、事前に動作を検討したうえで設定してください。

Maps JavaScript API は、左から右(LTR)および右から左(RTL)に表記する文字の両方を含む双方向(Bidi)テキストにも対応しています。RTL 言語とは、アラビア語、ヘブライ語、ペルシア語などです。RTL 言語を正しく表示するには、通常は、ページの <html> 要素に dir='rtl' を追加する必要があります。以下のサンプルでは、アラビア語のコントロールを使用してエジプトのカイロの地図を表示しています。

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

サンプルを表示

サポートされている言語の一覧をご覧ください。新しい言語が頻繁に追加されるため、このリストで網羅されていない場合があります。

リージョンのローカライズ

Maps JavaScript API のコードを読み込む際に <script> タグに region パラメータを追加すると、アプリケーションの動作を変更して、デフォルトとは異なる地図タイルを配信することや、バイアスを適用する(たとえばジオコーディングの結果に特定の地域へのバイアスをかける)ことが可能です。

多くのサービス(たとえば Place Autocomplete)は region が設定されていたほうが良い結果を出せるため、Maps JavaScript API アプリケーションを開発する際は常に region パラメータを設定することが推奨されます。また、Maps JavaScript API アプリケーションのデベロッパーには、アプリケーションがホストされている国に合わせて適切にリージョン ローカライズを行い、その地域の法律を遵守したアプリケーションを作成する責任があります。

region パラメータは、一般的に国別コード トップレベル ドメイン(ccTLD)と 1 対 1 になったマッピングを持つ Unicode region subtag identifier を受け付けます。大半の Unicode region identifier は ISO 3166-1 alpha-2 コードと同一ですが、いくつか注意が必要な例外もあります。たとえば、イギリスの ccTLD は「uk」(ドメインは .co.uk)ですが、リージョン ID は「GB」です。サポートされている地域は、Google Maps Platform のサポート状況でご確認いただけます。こちらのデモで、region パラメータの更新による地図の変化をお試しください。

たとえば、次の script タグは地図を英国にローカライズしています。

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

次の例は、バイアスによるジオコーディングの動作の違いを示したものです。どちらも「トレド」を指定していますが、一方の地図は regionUS(米国)に設定されているためオハイオ州トレドが、もう一方では regionES(スペイン)に設定されているためスペインのトレドが表示されています。

US のサンプルES のサンプルをご覧ください。

ローカライズのデモ

地図の言語を設定する際は、リージョンも設定することが重要です。以下のデモでは、選択した言語とリージョンで地図を読み込んでいます。

このデモは全画面表示でご覧ください。