ArcGIS Server に含まれる PrintingTools ジオプロセシング サービスを使用してマップを印刷する場合は、レイヤーおよび範囲情報を含むマップの JSON (JavaScript Object Notation) 形式を構成する必要があります。 JSON は Esri ExportWebMap 仕様に従って構成します。
ArcGIS Web API を使用する場合は、API が JSON の構成を担当するので、自分で JSON を構成する必要はありません。 ただし、自分で JSON を構成する必要がある場合は、参考になる情報がこのトピックに記載されています。 考えられるのは、PrintingTools サービスを直接呼び出すこと、または別のアプリケーションからソース ジオプロセシング ツールの [Web マップのエクスポート (Export Web Map)] を実行することが必要になった場合などです。
注意:
読みやすくするために、このトピックの JSON の例はフォーマットされています。 ただし、実際には、印刷サービスを通じてフォーマットされていない JSON を渡す必要があります。
Web マップは 5 つのトップ レベルのオブジェクトで構成されます。
{
"mapOptions": {},
"operationalLayers": [],
"baseMap": [],
"exportOptions": {},
"layoutOptions": {},
"reportOptions": {}
}
mapOptions
必須のオブジェクト mapOptions は、マップ表示プロパティを定義します。
構文: | 例 |
---|---|
|
|
説明 | |
|
operationalLayers
operationalLayers リストには、マップに表示されるすべての操作レイヤーが示されています。 この配列の順序によって、マップ内のレイヤーの順序が決まります。 各レイヤーのタイプは、URL リソースのレスポンスで定義されます。 リソースが URL から判別できない場合は、type プロパティによってタイプが決定されます。 たとえば、WMS レイヤーの場合は、「"type": "wms"」と指定する必要があります。 全タイプの操作レイヤーに共通のプロパティと、各タイプの操作レイヤーに固有のプロパティがあります。
セキュリティ保護されたレイヤーの場合は、レイヤー定義内にトークンを指定します。 ユーザー名とパスワードを URL の一部に使用することはできません。
注意:
マップ サービス、フィーチャ サービス、またはイメージ サービスの場合は、該当するサービスの REST エンドポイントを指す URL を使用します。 SOAP エンドポイントはサポートされません。
操作レイヤーの構文 |
---|
|
説明 |
注意:次に示すプロパティは、すべてのタイプの操作レイヤー (マップ サービス レイヤー、クライアント側グラフィックス、KML レイヤーなど) で共通です。 したがって、このセクションの各操作レイヤー タイプの説明に記載されていない場合があります。
|
マップ サービス レイヤーの構文 | 例 |
---|---|
|
|
説明 | |
|
フィーチャ レイヤーの構文 | 例 |
---|---|
|
|
説明 | |
|
イメージ サービス レイヤーの構文 | 例 |
---|---|
|
|
説明 | |
注意:イメージ サービス レイヤーの詳細については、「ArcGIS REST API」をご参照ください。 |
WMS サービス レイヤーの構文 | |
---|---|
| |
説明 | |
|
KML レイヤーの構文 | 例 |
---|---|
|
|
説明 | |
|
クライアント側イメージの構文 | 例 |
---|---|
|
|
説明 | |
|
クライアント側グラフィックスの構文 | 例 | |
---|---|---|
|
| |
説明 | ||
|
URL による CSV (カンマ区切り) ファイルの構文 | 例 | |
---|---|---|
|
| |
説明 | ||
|
その他のプロパティ
注意:
次のプロパティの詳細については、「ArcGIS REST API」をご参照ください。
- source
- renderer
- symbol
- textSymbol
- labelingInfo
- geometry
- geometryType
- spatialRel
- relationParam
テンポラル レンダラーの drawingInfo を定義する構文 | 例 |
---|---|
注意:テンポラル レンダラーは、ArcGIS Pro から公開された印刷サービスではサポートされていません。
|
|
symbolAger を定義する構文 | |
| |
agerClassBreakInfo を定義する構文 | |
| |
説明 | |
|
ジオプロセシングの結果
ジオプロセシングの結果を含めるには、次の 2 つの方法があります。
- ジオプロセシングの結果がフィーチャ セットとして返され、クライアント側でグラフィックスとして描画される場合は、フィーチャ コレクションとして結果を送ります。
- 結果をジョブの結果マップ サービスで描画する場合は、新しいマップ サービス レイヤーを operationalLayers に追加し、結果のエンドポイントを指すように URL プロパティを設定します。 例:
- 10.1 以降のバージョンでのジオプロセシング結果: https://gisserver.domain.com:6080/arcgis/rest/services/GPJobMapServiceName/MapServer/jobs/job_id
- 10.0 以前のバージョンでのジオプロセシング結果: https://gisserver.domain.com/arcgis/rest/services/GPServiceName/GPServer/GPTaskName/jobs/job_id/results/out_param_name
例: ジョブ結果マップ サービスによって描画される操作レイヤーとしてのジオプロセシングの結果
"operationalLayers": [
{
"url": "https://gisserver.domain.com:6080/arcgis/rest/services/Buffer/MapServer/jobs/j9aa6c36d59f44829a0daeadb2d0ff87b",
"title": "Geoprocessing Result"
}
]
baseMap
タイトルと baseMapLayers プロパティ (baseMapLayers の番号順リストを含む) で構成された 1 つのベースマップがマップに含まれます。 それぞれの baseMapLayer は、同じ空間参照およびタイル スキーマ内に存在する必要があります。 baseMap が存在する場合は、その baseMap でマップの空間参照が定義されます。
baseMap の構文 | 例 |
---|---|
|
|
baseMapLayer としてのベクター タイル レイヤーの構文 | 例 |
---|---|
注意:ベクター タイル レイヤーは、ArcGIS Pro から公開された印刷サービスでのみサポートされています。
|
|
basemapLayer としての Bing Maps の構文 | 例 |
---|---|
|
|
basemapLayer としての OpenStreetMap の構文 | 例 |
---|---|
|
|
説明 | |
|
basemapLayer としての WebTiledLayer の構文 | 例 |
---|---|
|
|
説明 | |
|
basemapLayer としての WMTS の構文 |
---|
|
exportOptions
このオブジェクトは、出力マップの設定を指定します。
構文 | 例 |
---|---|
|
|
説明 | |
|
layoutOptions
使用可能な別のページ レイアウト エレメントの設定を定義します。使用可能なレイアウト テンプレートが選択されている場合にのみ指定する必要があります。 ページ レイアウト エレメントには、タイトル、著作権情報、縮尺記号、作成者名、カスタム テキスト エレメントとダイナミック テキスト エレメント、チャート フレーム エレメント、テーブル フレーム エレメントが含まれます。
注意:
このオプションでは、既存のエレメントのプロパティだけが置換されます。 選択されたレイアウト テンプレートにエレメントが存在しない場合は、関連するプロパティが無視されます。 たとえば、レイアウト テンプレートに著作権情報エレメントがない場合は、layoutOptions で copyrightText エレメントが指定されていても、レイアウトに新しい著作権情報エレメントを追加できません。
チャートは、チャート フレーム エレメント用のソースとして使用する前に、操作レイヤーで完全に定義する必要があります。
このオブジェクトのプロパティはすべてオプションです。 プロパティの値を指定した場合は、対応するページ レイアウト エレメントの値が置き換えられます。それ以外の場合は、既存のエレメントは何も変更されません。
ExportWebMap カスタム テキスト エレメント | ArcGIS Pro で対応するダイナミック テキスト |
---|---|
titleText | <dyn type="layout" property="metadata" attribute="title" emptyStr=""/> |
authorText | <dyn type="layout" property="metadata" attribute="contactname" emptyStr=""/> |
copyrightText | <dyn type="layout" property="metadata" attribute="credits" emptyStr=""/> |
注意:
詳細については、ArcGIS ヘルプの dynamicText をご参照ください。
構文 | 例 |
---|---|
|
|
説明 | |
|
reportOptions
使用可能な別のレポート エレメントの設定を定義します。使用可能なレポート テンプレートが選択されている場合にのみ指定する必要があります。 レポート エレメントには、ソースとそれに関連するソース ID、フィールド リストなどが含まれます。
注意:
このオプションでは、既存のエレメントのプロパティだけが置換されます。 選択されたレポート テンプレートにエレメントが存在しない場合は、関連するプロパティが無視されます。 たとえば、あるレポート テンプレートに関連するレポートが存在しない場合、出力されるレポートには、関連するレコードが含まれません。
このオブジェクトのすべてのプロパティが必須です。
各レポート テンプレートにどのエレメントを使用できるかを確認するには、「レポート テンプレート情報の取得」タスクにリクエストを送信します。
構文 | 例 |
---|---|
|
|
説明 | |
| |
制限事項
メモ レイヤー内でフィーチャレベル シンボルが優先されるように設定されていても、レンダラー タイプがクラス閾値またはシンプルの場合はサポートされません。