スタートガイド

はじめに

Maps Static API は、URL 経由の HTTP リクエストに対して、画像(GIF、PNG、JPEG のいずれか)を返します。リクエストごとに、地図の位置、画像のサイズ、ズームレベル、地図のタイプ、地図上の場所へのオプションのマーカーの配置を指定できます。また、マーカーに英数字を使用するラベルを付けることもできます。

Maps Static API の画像は、<img> タグの src 属性、または他のプログラミング言語での同等の属性に埋め込まれます。

このドキュメントでは、Maps Static API の URL の形式と使用可能なパラメータについて説明します。URL を指定する際のヒントとコツも紹介しています。

始める前に

このドキュメントは、Maps Static API の画像をウェブページやモバイルアプリに組み込むウェブサイト デベロッパーとモバイル デベロッパーを対象としています。ここでは、利用可能なパラメータに関する API とリファレンス マテリアルの使い方を説明します。

Maps Static API を使った開発を始める前に、認証要件(API キーが必要)と API の使用量とお支払い情報(プロジェクトで課金を有効にする必要があります)を確認します。

URL パラメータ

Maps Static API の URL は、次の形式にする必要があります。

https://maps.googleapis.com/maps/api/staticmap?parameters

ウェブサイトに HTTPS でアクセスする場合は、ブラウザのセキュリティ通知を避けるため、Maps Static API の画像も HTTPS で読み込む必要があります。リクエストにユーザーの位置情報などの機密性の高いユーザー情報が含まれている場合も、HTTPS を使用することをおすすめします。

https://maps.googleapis.com/maps/api/staticmap?parameters

HTTP と HTTPS のどちらを使用している場合でも、一部の URL パラメータは必須ですが、省略可能なパラメータもあります。URL の標準と同様に、すべてのパラメータはアンパサンド(&)文字を使用して区切ります。このドキュメントでは、パラメータとその有効な値のリストを列挙しています。

Maps Static API では、次の URL パラメータを使用して地図画像を定義します。

地域パラメータ

  • center(マーカーが存在しない場合は必須)は、地図のすべての端から等距離にある地図の中心を定義します。このパラメータは、カンマで区切った {緯度,経度} のペア(例: 40.714728,-73.998672)または文字列の住所(例: city Hall, new york, ny)で、地表上の一意の場所を示します。詳細については、ロケーションをご覧ください。
  • zoom(マーカーが存在しない場合は必須)は、地図のズームレベルを定義します。ズームレベルによって、地図の拡大レベルが決定されます。このパラメータは、目的の領域のズームレベルに対応する数値を受け取ります。詳しくは、ズームレベルをご覧ください。

マップ パラメータ

  • size(必須)は、地図画像の長方形のサイズを定義します。このパラメータは、{horizontal_value}x{vertical_value} という形式の文字列を受け取ります。たとえば、500x400 は幅 500 ピクセル、高さ 400 ピクセルの地図を定義しています。幅が 180 ピクセル未満のマップでは、縮小されたサイズの Google ロゴが表示されます。このパラメータは scale パラメータの影響を受けます。最終的な出力サイズは、サイズとスケールの値の積になります。
  • scale(省略可)は、返されるピクセルの数に影響します。scale=2 は、同じ対象範囲と詳細レベルを保ちながら、scale=1 の 2 倍のピクセルを返します(つまり、地図のコンテンツは変化しません)。これは、高解像度ディスプレイ向けの開発を行う場合に便利です。 デフォルト値は 1 です。指定できる値は 12 です。詳細については、スケール値をご覧ください。
  • format(省略可)は、結果の画像の形式を定義します。Maps Static API では、デフォルトで PNG 画像が作成されます。GIF、JPEG、PNG など、いくつかの形式を使用できます。使用する形式は、画像の表示方法によって異なります。通常、JPEG は圧縮率に優れ、GIF と PNG は解像度が高いです。詳細については、画像形式をご覧ください。
  • maptype(省略可)は、作成する地図のタイプを定義します。指定できる maptype 値は、roadmapsatellitehybridterrain などです。詳しくは、Maps Static API のマップタイプをご覧ください。
  • language(省略可)は、地図タイルのラベルの表示に使用する言語を定義します。このパラメータは、一部の国のタイルでのみサポートされます。リクエストされた特定の言語がタイルセットでサポートされていない場合は、そのタイルセットのデフォルト言語が使用されます。
  • region(省略可)は、地政学的な配慮に基づいて、表示する適切な境界を定義します。2 文字の ccTLD(「トップレベル ドメイン」)値として指定された地域コードを受け入れます。サポートされている地域については、Google Maps Platform のサポート状況をご覧ください。

特徴パラメータ

  • map_id(省略可)は、特定の地図の ID を指定します。マップ ID は、地図を特定のスタイルまたは対象物に関連付けます。また、地図の初期化に使用された API キーと同じプロジェクトに属している必要があります。詳しくは、マップ ID を使用するをご覧ください。
  • markers(省略可能)は、指定した位置の画像に添付する 1 つ以上のマーカーを定義します。このパラメータは、パイプ文字(|)で区切られた複数のパラメータを含む 1 つのマーカー定義を受け取ります。同じスタイルであれば、同じ markers パラメータ内に複数のマーカーを配置できます。markers パラメータを追加することで、スタイルの異なるマーカーを追加できます。地図にマーカーを使用する場合、center パラメータと zoom パラメータ(通常は必須)を指定する必要はありません。詳しくは、Maps Static API のマーカーをご覧ください。
  • path(省略可)は、指定した位置の画像に重ねる 2 つ以上の接続ポイントからなる単一のパスを定義します。このパラメータは、パイプ文字(|)で区切られた地点の定義の文字列か、パスの場所宣言内で enc: プレフィックスを使用したエンコードされたポリラインを受け取ります。path パラメータをさらに追加して、別のパスを指定することもできます。地図のパスを指定する場合、center パラメータと zoom パラメータ(通常は必須)を指定する必要はありません。詳しくは、Maps Static API のパスをご覧ください。
  • visible(省略可能)は、マーカーやその他のインジケーターを表示せずに、地図上に表示し続ける必要がある場所を 1 つ以上指定します。このパラメータを使用すると、Maps Static API に特定の機能や地図上の場所を表示できます。
  • style(省略可能)は、地図の特定の対象物(道路、公園、その他の対象物)の表示を変更するカスタム スタイルを定義します。このパラメータは、スタイル設定する対象物を指定する feature 引数と element 引数と、選択した対象物に適用するスタイル処理のセットを指定します。style パラメータを追加すると、複数のスタイルを指定できます。詳しくは、スタイル付き地図に関するガイドをご覧ください。

鍵パラメータと署名パラメータ

  • key(必須)を使用すると、Google Cloud コンソールでアプリケーションの API 使用状況をモニタリングできます。また、必要に応じて Google からアプリケーションについて連絡を受けることもできます。詳しくは、Maps Static API で API キーを使用するをご覧ください。
  • signature推奨)は、API キーを使用してリクエストを生成するサイトに対して、認証が承認されていることを検証するために使用されるデジタル署名です。デジタル署名のないリクエストは失敗することがあります。詳しくは、デジタル署名を使用するをご覧ください。

URL のサイズ制限

Maps Static API の URL は最大 16,384 文字に制限されています。実際には、多数のマーカーとパスを含む複雑な地図を作成しない限り、これより長い URL を用意する必要はありません。

パラメータの使用

Maps Static API は、パラメータ化された URL のみで構成されているため、比較的簡単に利用できます。このセクションでは、これらのパラメータを使用して URL を作成する方法について説明します。

位置の指定

Maps Static API では、地図上の場所を正確に識別でき、地図の正確な位置に合わせる(center パラメータを使用)、オプションの目印を地図上の場所に配置する(markers パラメータを使用)必要があります。Maps Static API では、数値(緯度と経度の値)または文字列(住所)を使用して、これらの場所を指定します。これらの値は、ジオコーディングされた場所を表します。

いくつかのパラメータ(markers パラメータや path パラメータなど)は、複数の場所を取ります。そのような場合、ロケーションはパイプ文字(|)で区切ります。

緯度と経度

緯度と経度は、小数点以下 6 桁までの精度を持つ、カンマ区切りのテキスト文字列内の数値を使用して定義されます。たとえば、「40.714728,-73.998672」は有効なジオコード値です。小数点以下 6 桁を超える精度は無視されます。

経度の値は、グリニッジ子午線の起点であるイギリスのグリニッジからの距離に基づきます。グリニッジは緯度 51.477222 に位置しているため、center の値に 51.477222,0 を入力すると、グリニッジを地図の中心にすることができます。

イギリス、グリニッジ

緯度と経度の値は、地球上の有効な場所に対応している必要があります。緯度には -9090 の値を指定できますが、経度には -180180 の任意の値を指定できます。無効な緯度または経度の値を指定すると、リクエストは不正なリクエストとして拒否されます。

住所

ほとんどの人は緯度と経度で話すのではなく、住所を使って場所を表します。住所を地理的位置に変換するプロセスは「ジオコーディング」と呼ばれます。有効な住所を指定すると、Maps Static API サービスでジオコーディングを実行できます。

緯度と経度を指定できるパラメータには、住所を示す文字列を代わりに指定することも可能です。Google が住所をジオコーディングし、マーカーの配置や場所の指定に使用する緯度/経度値を Maps Static API サービスに提供します。この文字列は URL エンコードする必要があります。たとえば、「City Hall, New York, NY」のような住所は「City+Hall,New+York,NY」に変換する必要があります。

住所には、番地(番地など)、ポリライン(名前付きの経路など)、多角形の地域(都市、国、国立公園など)を反映している場合があります。ポリラインまたはポリゴンの結果の場合、Maps Static API サーバーはラインまたはエリアの中心点を住所の中心として使用します。住所のジオコーディング方法が不明な場合は、 Geocoding ユーティリティを使用して住所をテストできます。

次の例では、カリフォルニア州バークレーの静的地図画像を生成します。

https://maps.googleapis.com/maps/api/staticmap?center=Berkeley,CA&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

カリフォルニア州バークリー

ズームレベル

Google マップの地図には、現在のビューの解像度を定義する整数の「ズームレベル」があります。デフォルトの roadmap ビューでは、0(最小のズームレベル、1 つの地図に世界全体を表示)から 21+(通りや個々の建物まで表示)のズームレベルを設定できます。ズームレベル 17 付近の地図に、可能な場合に建物の枠線が表示されます。この値は地域によって異なり、データの進化に伴い時間とともに変化する可能性があります。

Google マップのズームレベルは 0 で、地球全体を表示するように設定されています。ズームレベルが上がるごとに、水平方向と垂直方向の精度が 2 倍になります。その方法について詳しくは、Google Maps JavaScript API のドキュメントをご覧ください。

注: すべてのズームレベルが地球上のすべての場所に表示されるわけではありません。地球上の一部の地域は他の地域よりもデータの粒度が細かいため、ズームレベルは場所によって異なります。

地図タイルが存在しないズームレベルのリクエストを送信した場合、Maps Static API は代わりに空白の画像を返します。

次のリストは、各ズームレベルで表示されるおおよその詳細度を示しています。

  • 1: 世界
  • 5: 大陸
  • 10: 都市
  • 15: 通り
  • 20: 建物

次の例では、同じ center 値でズームレベルがそれぞれ 12 と 14 の 2 つのマンハッタンの地図をリクエストしています。

https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

縮小したマンハッタン  拡大したマンハッタン

画像サイズ

size パラメータは center と組み合わせて使用し、地図のカバーエリアを定義します。また、scale 値(デフォルトでは 1)と掛け合わせる場合、地図の出力サイズをピクセル単位で定義します。

次の表は、各 scale 値での size パラメータの最大許容値を示しています。

scale=1 scale=2
640x640 640x640(1280x1280 ピクセルを返す)

次の例では、ズームレベル 1 の赤道における地球の「スライス」をリクエストしています。

https://maps.googleapis.com/maps/api/staticmap?center=0,0&zoom=1&size=400x50&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

赤道

次の例では、同じ領域を中心とするサイズが 100 x 100 ピクセルの小さな地図をリクエストしています。Google ロゴが小さくなっていることに注意してください。

https://maps.googleapis.com/maps/api/staticmap?center=0,0&zoom=1&size=100x100&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

小さな赤道のマップ

値の尺度

Maps Static API の size パラメータでは、地図のサイズをピクセル単位で定義します。size=200x200 が設定された地図は、200 x 200 ピクセルとして返されます。通常、1 インチあたり約 100 ピクセル(ppi)を表示する LCD コンピュータ モニターでは、200x200 の地図は各寸法が約 2 インチになります。

しかし、モバイル デバイスは、ピクセル密度が 300 ppi を超える高解像度画面を搭載する傾向が高まっており、次のいずれかに該当しています。

  • 200x200 ピクセルの画像のサイズをわずか 0.7 インチに縮小し、ラベルやアイコンが小さすぎて読めない表示にする。
  • 読みやすくするために画像を拡大縮小(ズーム)すると、画像が不鮮明になったりモザイク状になったりします。
小さすぎる ぼやけている

モバイル デバイス向けに開発する際は、API の scale パラメータを使用して高解像度の地図画像を返すことで、上記の問題を解決できます。scale 値に size を掛けて、地図の実際の出力サイズ(ピクセル単位)を決定します。地図のカバー範囲は変わりません。scale のデフォルト値は 1 です。指定できる値は 1 と 2 です。

たとえば、縮尺値が 2 の場合、返される地図の表示範囲は、縮尺が指定されていないリクエストと同じで、各次元のピクセル数が 2 倍になります。道路やラベルが含まれているので、高解像度の小さな画面でも、ブラウザで拡大縮小しても見やすくなります。

150x150 150x150&scale=2

このような画像を、CSS を使って高さと幅を設定した img タグまたは div タグに挿入すると、パソコンのブラウザでも適切に機能します。ブラウザは、画質を損なうことなく、画像を正しいサイズに縮小します。

この表は、3 種類の画像リクエストを示しています。

  • 1 つ目は、スケール値が指定されていない 100x100 の画像用です。デスクトップでは正しく表示されますが、モバイル デバイスでは小さすぎて読めません。
  • 2 つ目のテンプレートでは、地図のサイズが 2 倍になっています。パソコンでは、CSS によって指定された 100x100 の img 要素に収まりますが、画像を縮小すると道路やラベルが小さくなりすぎます。モバイル デバイスではこの画像は適切なサイズですが、この場合も道路やラベルが判読できません。
  • 3 つ目のリクエストは、scale=2 を含む 100×100 の地図です。この画像は 200 ピクセルの詳細で返されます。デスクトップでは完全に縮小されるため、元の 100x100 リクエストと区別できませんが、モバイル ブラウザでは API によって返された追加の解像度を利用できます。
画像のリクエスト
デバイス 100x100 200x200 100x100&scale=2
パソコン
img タグで
height="100px"
width="100px" を指定)
高解像度
(シミュレーション)

モバイルおよび高解像度ディスプレイ向けの開発について詳しくは、以下をお読みください。

イメージの形式

画像は、一般的なウェブ グラフィック形式(GIFJPEGPNG)で返されます。format パラメータは次のいずれかの値を取ります。

  • png8 または png(デフォルト)は、8 ビットの PNG 形式を指定します。
  • png32 は 32 ビット PNG 形式を指定します。
  • gifGIF 形式を指定します。
  • jpgJPEG 圧縮形式を指定します。
  • jpg-baseline は、ノンプログレッシブ JPEG 圧縮形式を指定します。

次の例では、gif 形式と png 形式の地図をリクエストしています。

  https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&format=gif&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
  https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&format=png&&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

通常、jpgjpg-baseline は画像サイズが最も小さくなりますが、「不可逆」圧縮になるため、画像が劣化するおそれがあります。gifpng8png32 は可逆圧縮を行います。

ほとんどの JPEG 画像はプログレッシブです。つまり、粗い画像を先に読み込み、データが届くにつれて画像解像度を調整していきます。これにより、ウェブページにすばやく画像を読み込むことができ、現在 JPEG が最も広く利用されています。ただし、JPEG を使用する一部の用途では、非プログレッシブ(ベースライン)画像が必要になります。そのような場合は、非プログレッシブの jpg-baseline 形式を使用することをおすすめします。

地図タイプ

Maps Static API では、以下の複数の形式で地図が作成されます。

  • roadmap(デフォルト)は、Google マップのウェブサイトで通常表示される標準の道路地図画像を指定します。maptype の値が指定されていない場合、Maps Static API はデフォルトで roadmap タイルを配信します。
  • satellite には衛星画像を指定します。
  • terrain は、地形や植生を示す物理的な地形図の画像を指定します。
  • hybrid は、航空写真と道路地図を組み合わせた画像を指定し、衛星画像の上に主要な通りや場所の名前の透明なレイヤを表示します。

このコード例でロードマップと地形タイプの違いを確認できます。

https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=roadmap&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=terrain&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

マンハッタンの通常のマップ  マンハッタンの地形図

地図+写真では、衛星画像と主要なロードマップの対象物を使って、組み合わせ地図を作成します。次の例は、航空写真と地図+写真のタイプを示しています。

https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=satellite&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=hybrid&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

マンハッタンの航空写真  マンハッタンの地形図

スタイル付き地図

独自のスタイルを適用して、標準の Google マップの表示をカスタマイズします。 詳しくは、スタイル付き地図に関するガイドをご覧ください。

マーカー

markers パラメータは、一連の位置に 1 つ以上のマーカー(地図ピン)のセットを定義します。1 つの markers 宣言内で定義する各マーカーは、同じ表示スタイルを示す必要があります。異なるスタイルのマーカーを表示する場合は、個別のスタイル情報を含む複数の markers パラメータを指定する必要があります。

markers パラメータは、次の形式の値の割り当て(マーカー記述子)のセットを受け取ります。

markers=markerStyles|markerLocation1| markerLocation2|... など

markerStyles のセットは markers 宣言の先頭で宣言します。これは、パイプ文字(|)で区切られた 0 個以上のスタイル記述子と、それに続く 1 つ以上の場所のセットをパイプ文字(|)で区切って構成します。

スタイル情報と位置情報はどちらもパイプ文字で区切られるため、どのマーカー記述子でもスタイル情報を最初に指定する必要があります。Maps Static API サーバーがマーカー記述子内で場所を見つけると、他のすべてのマーカー パラメータも場所であると見なされます。

マーカーのスタイル

マーカー スタイル記述子のセットは、パイプ文字(|)で区切った一連の値割り当てです。このスタイル記述子では、このマーカー記述子内にマーカーを表示する際に使用する視覚的属性を定義します。これらのスタイル記述子には、次の Key-Value 割り当てが含まれます。

  • size:(省略可)は、マーカーのサイズを {tiny, mid, small} のセットから指定します。size パラメータが設定されていない場合、マーカーはデフォルト(通常)のサイズで表示されます。
  • color:(省略可)は、24 ビットカラー(color=0xFFFFCC など)、または {black, brown, green, purple, yellow, blue, gray, orange, red, white} のセットから事前定義された色を指定します。

    透明度(32 ビットの 16 進カラー値で指定)はマーカーではサポートされていませんが、パスではサポートされています。

  • label:(省略可)は、{A ~ Z、0 ~ 9} から大文字の英数字を 1 文字指定します。(このバージョンの API では、新たに大文字が必須になりました)。alphanumeric-character パラメータを表示できるのは、デフォルト サイズと mid サイズのマーカーのみです。 tiny マーカーと small マーカーには英数字を表示できません。

マーカーの拡大縮小

scale 値にマーカー画像サイズを掛けて、マーカーの実際の出力サイズ(ピクセル単位)を生成します。デフォルトのスケール値は 1 です。指定できる値は 1、2、4 です。

画像のピクセルサイズの上限は、スケーリングが適用されたに適用されます。たとえば、マーカーが scale:2 に設定されている場合、スケーリング後にサイズが 4,096 ピクセル未満であれば、マーカーの最大サイズである 4,096 ピクセルより大きくすることができます。高解像度の地図を表示する場合は、マーカーのスケーリングと地図のスケーリングを併用します。

マーカーの場所

各マーカー記述子には、地図上のマーカーを配置する場所を定義する 1 つ以上の場所のセットを含める必要があります。これらの場所は、緯度/経度値または住所として指定できます。これらの場所はパイプ文字(|)で区切ります。

: ジオコーディングが必要な方法(人が読める形式の住所文字列やポリラインなど)を使用してマーカーの位置を指定した場合、リクエストできるマーカーは最大 15 個に制限されます。この制限は、ジオコーディングが必要なマーカーの場所にのみ適用されます。緯度と経度の座標で指定されたマーカーの位置には適用されません。

location パラメータは、地図上のマーカーの位置を定義します。場所が地図の外にある場合、center パラメータと zoom パラメータが指定されていれば、作成された画像にそのマーカーは表示されません。ただし、これらのパラメータが指定されていない場合、Maps Static API サーバーは自動的に、指定されたマーカーを含む画像を作成します。 (暗黙的な配置をご覧ください)。

マーカー宣言のサンプルを次に示します。ここでは 1 つのスタイルセットと 3 つの場所を定義しています。

https://maps.googleapis.com/maps/api/staticmap?center=Williamsburg,Brooklyn,NY&zoom=13&size=400x400&
markers=color:blue%7Clabel:S%7C11211%7C11206%7C11222&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

ブルックリンの 3 つの郵便番号

スタイルが異なるマーカーを定義するには、複数の markers パラメータを指定する必要があります。この markers パラメータのセットは 3 つのマーカーを定義します。62.107733, -145.5419 に「S」というラベルの付いた青のマーカーが 1 つ、「Delta Junction, AK」に緑色の小さいマーカーが 1 つ、「Tok, AK」に「C」というラベルの付いた中サイズの黄色のマーカーが 1 つあります。以下の例では、これらのマーカーを表示しています。

https://maps.googleapis.com/maps/api/staticmap?center=63.259591,-144.667969&zoom=6&size=400x400
&markers=color:blue%7Clabel:S%7C62.107733,-145.541936&markers=size:tiny%7Ccolor:green%7CDelta+Junction,AK
&markers=size:mid%7Ccolor:0xFFFF00%7Clabel:C%7CTok,AK"&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

異なるマーカーを付けたアラスカの 3 つの町

カスタム アイコン

Google のマーカー アイコンの代わりに、独自のカスタム アイコンを使用することもできます。カスタム アイコンは、markers パラメータの icon 記述子を使用して指定します。例:

markers=icon:URLofIcon|markerLocation

URL を使用して icon を指定します(URL エンコードする必要があります)。https://goo.gl などの短縮 URL サービスで作成された URL を使用できます。ほとんどの URL 短縮サービスには、URL が自動的にエンコードされるという利点があります。

カスタム アイコンのアンカー ポイントを指定できます。アンカー ポイントは、指定された markers の位置に応じたアイコンの配置方法を設定します。デフォルトでは、カスタム アイコンのアンカー ポイントはアイコン画像の下中央です。anchor 記述子を icon と組み合わせて使用すると、別のアンカー ポイントを指定できます。anchor は、アイコンの x、y 点(10,5 など)、または topbottomleftrightcentertoplefttoprightbottomleftbottomright のいずれかを使用して、事前定義された配置として設定します。例:

markers=anchor:bottomright|icon:URLofIcon|markerLocation1|markerLocation2

1 回のリクエストあたり最大 5 つのカスタム アイコンを使用できます。ただし、地図上でマークできる場所が 5 か所に制限されるわけではありません。それぞれの固有のアイコンを、地図上の複数の markers の場所で使用することができます。

アイコンの形式:

  • アイコンの画像には、PNG、JPEG、GIF を使用できますが、PNG が推奨されます。
  • アイコンの最大サイズは 4,096 ピクセル(正方形の画像の場合は 64x64)。
カスタム アイコンの例

例 1 では、カスタム アイコンを作成し、アンカーを使用してアイコンを配置しています。

https://maps.googleapis.com/maps/api/staticmap?&size=600x400&style=visibility:on
&style=feature:water%7Celement:geometry%7Cvisibility:on
&style=feature:landscape%7Celement:geometry%7Cvisibility:on
&markers=anchor:32,10%7Cicon:https://goo.gl/5y3S82%7CCanberra+ACT
&markers=anchor:topleft%7Cicon:http://tinyurl.com/jrhlvu6%7CMelbourne+VIC
&markers=anchor:topright%7Cicon:https://goo.gl/1oTJ9Y%7CSydney+NSW&key=YOUR_API_KEY
&signature=YOUR_SIGNATURE

オーストラリアの 3 つの町。別々のカスタム アイコンがアンカーで配置されている。

例 2 は、例 1 と同じカスタム アイコンを作成しますが、アンカーを使用してアイコンの位置を設定せず、下中央のデフォルトのアンカーを使用します。

https://maps.googleapis.com/maps/api/staticmap?&size=600x400&style=visibility:on
&style=feature:water%7Celement:geometry%7Cvisibility:on
&style=feature:landscape%7Celement:geometry%7Cvisibility:on
&markers=icon:https://goo.gl/5y3S82%7CCanberra+ACT
&markers=icon:http://tinyurl.com/jrhlvu6%7CMelbourne+VIC
&markers=icon:https://goo.gl/1oTJ9Y%7CSydney+NSW&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

オーストラリアの 3 つの町。デフォルトの配置が異なるカスタム アイコン。

Maps Static API のパス

path パラメータは、地図画像にオーバーレイするパスで連結された 1 つ以上の場所のセットを定義します。path パラメータは、次の形式の一連の値割り当て(パス記述子)を取ります。

path=pathStyles|pathLocation1|pathLocation2|... など

両方のパスポイントをパイプ文字(|)で区切ります。スタイル情報とポイント情報はどちらもパイプ文字で区切られるため、スタイル情報はどのパス記述子でも最初に指定する必要があります。Maps Static API サーバーがパス記述子内で場所を見つけると、他のすべてのパスパラメータも場所であると見なされます。

パスのスタイル

パススタイル記述子のセットは、パイプ文字(|)で区切られた一連の値割り当てです。このスタイル記述子では、パスの表示時に使用する視覚的属性を定義します。これらのスタイル記述子には、次の Key-Value 割り当てが含まれます。

  • weight:(省略可)は、パスの太さをピクセル単位で指定します。weight パラメータが設定されていない場合、パスはデフォルトの太さ(5 ピクセル)で表示されます。
  • color:(省略可)は、24 ビット(color=0xFFFFCC など)または 32 ビットの 16 進数値(color=0xFFFFCCFF など)、または {black, brown, green, purple, yellow, blue, gray, orange, red, white} のセットで色を指定します。

    32 ビットの 16 進数値が指定されている場合、最後の 2 文字は 8 ビットのアルファ透明度値を指定します。この値は 00(完全に透明)から FF(完全に不透明)まで変化します。透明度はパスではサポートされていますが、マーカーではサポートされていません。

  • fillcolor:(省略可)は、パスが多角形の領域を外すことと、その領域内のオーバーレイとして使用する塗りつぶしの色を指定します。後続の位置は、「クローズド」ループにする必要はありません。Maps Static API サーバーは自動的に最初と最後のポイントを結合します。ただし、塗りつぶしエリアの外側のストロークは、同じ開始位置と終了位置を明示的に指定しない限り閉じません。
  • geodesic:(省略可)は、リクエストされたパスを地球の湾曲に沿った測地線として解釈するよう指定します。false の場合、パスは画面スペース内に直線としてレンダリングされます。デフォルトは false です。

パスの定義の例を次に示します。

  • 青色の細い線、不透明度 50%: path=color:0x0000ff80|weight:1
  • 赤色の実線: path=color:0xff0000ff|weight:5
  • 白の太い実線: path=color:0xffffffff|weight:10

これらのパスのスタイルは省略可能です。デフォルトの属性が必要な場合は、パス属性の定義をスキップできます。その場合、パス記述子の最初の「引数」は、最初に宣言されたポイント(位置)ではなく、最初の「引数」になります。

経路のポイント

パスを描画するには、path パラメータに 2 つ以上のポイントを渡す必要もあります。Maps Static API は、指定された順序でこれらの地点に沿ってパスを接続します。各パスポイントは、pathDescriptor|(パイプ)文字で区切ります。

次の例では、ニューヨーク州ユニオン スクエアからタイムズ スクエアまで、不透明度がデフォルトの 50% の青いパスを定義しています。

ユニオン スクエアからタイムズ スクエアまでのパス

path パラメータの詳細は次のとおりです。

path=color:0x0000ff|weight:5|40.737102,-73.990318|40.749825,-73.987963|40.752946,-73.987384|40.755823,-73.986397

次の例では、同じパスを定義して不透明度 100% の赤い実線を定義しています。

ユニオン スクエアからタイムズ スクエアまでのパス

この path パラメータの詳細は次のとおりです。

path=color:0xff0000ff|weight:5|40.737102,-73.990318|40.749825,-73.987963|40.752946,-73.987384|40.755823,-73.986397

次の例では、マンハッタン内の多角形のエリアを定義し、一連の交差点を場所として渡しています。

ユニオン スクエアからタイムズ スクエアまでのパス

この path パラメータの詳細は次のとおりです。

path=color:0x00000000|weight:5|fillcolor:0xFFFF0033|8th+Avenue+%26+34th+St,New+York,NY|\
8th+Avenue+%26+42nd+St,New+York,NY|Park+Ave+%26+42nd+St,New+York,NY,NY|\
Park+Ave+%26+34th+St,New+York,NY,NY

パス自体は非表示に設定し、ポリゴン領域の不透明度は 15% に設定しています。

エンコードされたポリライン

一連の場所ではなく、path の場所の宣言内で enc: 接頭辞を使って、パスをエンコードされたポリラインとして宣言することもできます。

次の例では、ブリティッシュ コロンビア州のドーソン クリークからアラスカ州デルタ ジャンクションまでのアラスカ ハイウェイのコースを、エンコードされたポリラインで示しています。

https://maps.googleapis.com/maps/api/staticmap
?size=400x400&center=59.900503,-135.478011&zoom=4
&path=weight:3%7Ccolor:orange%7Cenc:_fisIp~u%7CU}%7Ca@pytA_~b@hhCyhS~hResU%7C%7Cx@oig@rwg@amUfbjA}f[roaAynd@%7CvXxiAt{ZwdUfbjAewYrqGchH~vXkqnAria@c_o@inc@k{g@i`]o%7CF}vXaj\h`]ovs@?yi_@rcAgtO%7Cj_AyaJren@nzQrst@zuYh`]v%7CGbldEuzd@%7C%7Cx@spD%7CtrAzwP%7Cd_@yiB~vXmlWhdPez\_{Km_`@~re@ew^rcAeu_@zhyByjPrst@ttGren@aeNhoFemKrvdAuvVidPwbVr~j@or@f_z@ftHr{ZlwBrvdAmtHrmT{rOt{Zz}E%7Cc%7C@o%7CLpn~AgfRpxqBfoVz_iAocAhrVjr@rh~@jzKhjp@``NrfQpcHrb^k%7CDh_z@nwB%7Ckb@a{R%7Cyh@uyZ%7CllByuZpzw@wbd@rh~@%7C%7CFhqs@teTztrAupHhyY}t]huf@e%7CFria@o}GfezAkdW%7C}[ocMt_Neq@ren@e~Ika@pgE%7Ci%7CAfiQ%7C`l@uoJrvdAgq@fppAsjGhg`@%7ChQpg{Ai_V%7C%7Cx@mkHhyYsdP%7CxeA~gF%7C}[mv`@t_NitSfjp@c}Mhg`@sbChyYq}e@rwg@atFff}@ghN~zKybk@fl}A}cPftcAite@tmT__Lha@u~DrfQi}MhkSqyWivIumCria@ciO_tHifm@fl}A{rc@fbjAqvg@rrqAcjCf%7Ci@mqJtb^s%7C@fbjA{wDfs`BmvEfqs@umWt_Nwn^pen@qiBr`xAcvMr{Zidg@dtjDkbM%7Cd_@
&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

アラスカ ハイウェイ

標準のパスと同様に、fillcolor 引数が path パラメータに渡される場合、エンコードされたポリライン パスでもポリゴンの領域を区切ることができます。

次の例では、ニューヨーク州ブルックリンを多角形状の領域として定義しています。

https://maps.googleapis.com/maps/api/staticmap
?size=400x400&center=40.653279,-73.959816&zoom=11
&path=fillcolor:0xAA000033%7Ccolor:0xFFFFFF00%7Cenc:}zswFtikbMjJzZ%7CRdPfZ}DxWvBjWpF~IvJnEvBrMvIvUpGtQpFhOQdKpz@bIx{A%7CPfYlvApz@bl@tcAdTpGpVwQtX}i@%7CGen@lCeAda@bjA%60q@v}@rfAbjA%7CEwBpbAd_@he@hDbu@uIzWcWtZoTdImTdIwu@tDaOXw_@fc@st@~VgQ%7C[uPzNtA%60LlEvHiYyLs^nPhCpG}SzCNwHpz@cEvXg@bWdG%60]lL~MdTmEnCwJ[iJhOae@nCm[%60Aq]qE_pAaNiyBuDurAuB }}Ay%60@%7CEKv_@?%7C[qGji@lAhYyH%60@Xiw@tBerAs@q]jHohAYkSmW?aNoaAbR}LnPqNtMtIbRyRuDef@eT_z@mW_Nm%7CB~j@zC~hAyUyJ_U{Z??cPvg@}s@sHsc@_z@cj@kp@YePoNyYyb@_iAyb@gBw^bOokArcA}GwJuzBre@i\tf@sZnd@oElb@hStW{]vv@??kz@~vAcj@zKa%60Atf@uQj_Aee@pU_UrcA
&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

ブルックリンの署名入りエンコード ポリライン

ビューポート

画像では、visible パラメータを使用して表示位置を指定することで、ビューポートを指定できます。visible パラメータは、既存の場所を表示したまま地図を作成するよう Maps Static API サービスに指示します。(このパラメータを既存のマーカーやパスと組み合わせて、表示される領域を定義することもできます)。この方法でビューポートを定義すると、正確なズームレベルを指定する必要がなくなります。

次の例では、マサチューセッツ州ボストンを中心とする地図をリクエストし、MIT とマサチューセッツ州ケンブリッジのハーバード スクエアの両方が含まれています。

https://maps.googleapis.com/maps/api/staticmap?center=Boston,MA
&visible=77+Massachusetts+Ave,Cambridge,MA%7CHarvard+Square,Cambridge,MA&size=512x512&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

ケンブリッジのマップ

地図の暗黙的な配置は

通常は、生成される地図の位置とズームレベルを定義するために、center および zoom URL パラメータを指定する必要があります。ただし、markerspathvisible のパラメータを指定した場合は、Maps Static API で、これらの要素の位置の評価に基づいて、正しい中心とズームレベルを暗黙的に判別させることができます。

2 つ以上の要素を指定した場合、Maps Static API は適切な中心とズームレベルを決定し、含まれる要素に十分な余白を確保します。次のサンプルは、カリフォルニア州サンフランシスコ、オークランド、サンノゼ、カリフォルニア州を含む地図を表示します。

https://maps.googleapis.com/maps/api/staticmap?size=512x512&maptype=roadmap\
&markers=size:mid%7Ccolor:red%7CSan+Francisco,CA%7COakland,CA%7CSan+Jose,CA&key=YOUR_API_KEY&signature=YOUR_SIGNATURE

ロードマップ

画像サイズを拡大

640 x 640 ピクセル(またはスケール値が 2 の 1,280 x 1,280 ピクセル)より大きい画像が必要な場合は、 サポートチームにお問い合わせのうえ、以下の情報をご提供ください。

  1. ユースケースと、大きなサイズの画像が必要な理由。
  2. 他の Google Maps Platform API(Maps JavaScript API、Maps Embed API、Maps SDK for Android、Maps SDK for iOS)の使用を検討したかどうかと、それらがニーズに合わない理由。
  3. 大きなサイズの画像の使用方法を示すスクリーンショット、モック、サンプル。
  4. 大きいサイズの画像の月間使用量の見積もりです。

Google は、提供された情報に基づいてリクエストを審査し、お客様のユースケースが Google Maps Platform 利用規約に準拠しているかどうかを判断します。

提供可能な最大サイズは 2048 x 2048 ピクセルです。

トラブルシューティングとサポート

Maps Static API の使い方について詳しくは、サポートページをご覧ください。

問題が発生した場合、Maps Static API からエラーまたは警告が返されることがあります。特に、地図に欠落しているものが見つかった場合は、警告を確認する必要があります。また、新しいアプリを起動する前に警告を確認することもおすすめします。この警告は HTTP ヘッダーに表示されるため、すぐにはわからない場合もあります。詳細については、エラーと警告に関するガイドをご覧ください。