Wenn Sie versuchen, eine Karte mit dem Geoverarbeitungs-Service PrintingTools zu drucken, der in ArcGIS for Server enthalten ist, müssen Sie eine JavaScript Object Notation (JSON)-Darstellung der Karte, einschließlich der zugehörigen Layer- und Ausdehnungsinformationen bereitstellen. Die JSON muss der Esri ExportWebMap-Spezifikation entsprechend strukturiert sein.
Wenn Sie die ArcGIS-Web-APIs verwenden, müssen Sie die Konstruktion der JSON nicht berücksichtigen; diese Aufgabe wird von den APIs übernommen. Dieses Thema ist jedoch zu Referenzzwecken enthalten, falls Sie die JSON-Darstellung selbst konstruieren müssen. Dies kann der Fall sein, wenn Sie den PrintingTools-Service direkt aufrufen müssen oder dessen Quell-Geoverarbeitungswerkzeug "Webkarte exportieren" über eine andere Anwendung ausführen möchten.
Hinweis:
Aus Gründen der Klarheit und Lesbarkeit werden JSON-Beispiele in diesem Thema formatiert dargestellt. In der Praxis sollten Sie über die Druckservices allerdings unformatierte JSON übergeben. Ab Version 10.6 akzeptieren dann der Standard-Druckservice, alle auf ArcPy basierenden Druckservices sowie alle über ArcGIS Pro veröffentlichten Druckservices ausschließlich unformatierte JSON.
Die Webkarte besteht aus fünf Objekten der obersten Ebene:
{
"mapOptions": {},
"operationalLayers": [],
"baseMap": [],
"exportOptions": {},
"layoutOptions": {}
}
mapOptions
Das Objekt mapOptions ist erforderlich und definiert Kartenanzeigeeigenschaften.
Syntax: | Beispiel |
---|---|
|
|
Beschreibung | |
|
operationalLayers
Die Liste "operationalLayers" enthält alle operationalen Layer, die auf der Karte angezeigt werden sollen. Die Reihenfolge des Arrays definiert die Reihenfolge der Layer auf der Karte. Der Typ der einzelnen Layer wird anhand der URL-Ressourcenantwort definiert. Wenn die Ressource nicht von der URL bestimmt werden kann, wird der Typ anhand der Typeigenschaft definiert. Ein WMS-Layer erfordert beispielsweise die Angabe "type" : "wms". Es gibt einige Eigenschaften, die für alle Typen von operationalen Layern gelten, während andere für den jeweiligen Typ des operationalen Layers spezifisch sind.
Bei gesicherten Layern geben Sie das Token in einer Layer-Definition an. Ein Benutzername und ein Kennwort werden nicht als Teil der URL unterstützt.
Hinweis:
Verwenden Sie für einen Kartenservice, Feature-Service oder Image-Service eine URL, die auf den REST-Endpunkt des Service verweist. SOAP-Endpunkte werden nicht unterstützt.
Syntax für operationale Layer |
---|
|
Beschreibung |
Hinweis:Die unten beschriebenen Eigenschaften gelten für alle Typen von operationalen Layern (wie Kartenservice-Layer, clientseitige Grafiken, KML-Layer usw.). Aus diesem Grund werden sie in diesem Abschnitt möglicherweise nicht für jeden Typ von operationalen Layern aufgeführt.
|
Syntax für einen Karten-Service-Layer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für einen Feature-Layer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für einen Image-Service-Layer | Beispiel |
---|---|
|
|
Beschreibung | |
Hinweis:Weitere Informationen zu Image-Service-Layern finden Sie unter ArcGIS-REST-API. |
Syntax für einen WMS-Service-Layer | |
---|---|
| |
Beschreibung | |
|
Syntax für einen KML-Layer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für einen clientseitigen Image-Service-Layer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für clientseitige Grafiken | Beispiel | |
---|---|---|
|
| |
Beschreibung | ||
|
Syntax für Dateien mit kommagetrennten Werten (CSV) nach URL | Beispiel | |
---|---|---|
|
| |
Beschreibung | ||
|
Weitere Eigenschaften
Hinweis:
Weitere Informationen zu den folgenden Eigenschaften finden unter ArcGIS-REST-API.
- source
- renderer
- symbol
- textSymbol
- labelingInfo
- geometry
- geometryType
- spatialRel
- relationParam
Syntax für die Definition von drawingInfo für einen Zeit-Renderer | Beispiel |
---|---|
Hinweis:Zeit-Renderer werden von über ArcGIS Pro veröffentlichte Druck-Services nicht unterstützt.
|
|
Syntax für die Definition von symbolAger | |
| |
Syntax für die Definition von agerClassBreakInfo | |
| |
Beschreibung | |
|
Geoverarbeitungsergebnis
Es gibt zwei Methoden zum Einbeziehen eines Geoverarbeitungsergebnisses:
- Wenn ein Geoverarbeitungsergebnis als Feature-Set zurückgegeben und als Grafik auf dem Client dargestellt wird, senden Sie das Ergebnis als Feature-Erfassung.
- Wenn das Ergebnis vom Kartenservice des Auftragsergebnisses dargestellt wird, fügen Sie einen neuen Kartenservice-Layer in "operationalLayers" hinzu und stellen Sie die URL-Eigenschaft so ein, dass sie auf den Endpunkt des Ergebnisses verweist. Beispiel:
- Geoverarbeitungsergebnis aus 10.1 oder einer höheren Version: http://gisserver.domain.com:6080/arcgis/rest/services/GPJobMapServiceName/MapServer/jobs/job_id
- Geoverarbeitungsergebnis aus 10.0 und früheren Versionen: http://gisserver.domain.com/arcgis/rest/services/GPServiceName/GPServer/GPTaskName/jobs/job_id/results/out_param_name
Beispiel: Geoverarbeitungsergebnis als operationaler Layer, der vom Ergebnis-Karten-Service eines Auftrags dargestellt wird.
"operationalLayers" : [
{
"url" : "http://gisserver.domain.com:6080/arcgis/rest/services/Buffer/MapServer/jobs/j9aa6c36d59f44829a0daeadb2d0ff87b",
"title" : "Geoprocessing Result"
}
]
baseMap
Die Grundkarte enthält eine baseMap, die einen Titel und eine baseMapLayers-Eigenschaft aufweist, die eine geordnete baseMapLayer-Liste enthält. Jeder baseMapLayer muss sich im gleichen Raumbezug und Kachelschema befinden. Wenn eine baseMap vorhanden ist, definiert sie den Raumbezug der Karte.
Syntax für baseMap | Beispiel |
---|---|
|
|
Syntax für Vektorkachel-Layer als basemapLayer | Beispiel |
---|---|
Hinweis:Vektorkachel-Layer werden nur von über ArcGIS Pro veröffentlichte Druck-Services unterstützt.
|
|
Syntax für Bing Maps als basemapLayer | Beispiel |
---|---|
|
|
Syntax für OpenStreetMap als basemapLayer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für WebTiledLayer als basemapLayer | Beispiel |
---|---|
|
|
Beschreibung | |
|
Syntax für WMTS als basemapLayer |
---|
|
exportOptions
Dieses Objekt gibt die Einstellungen für die Ausgabekarte an.
Syntax | Beispiel |
---|---|
|
|
Beschreibung | |
|
layoutOptions
Mit dieser Eigenschaft werden die Einstellungen für verschiedene verfügbare Seitenlayoutelemente definiert. Sie ist nur erforderlich, wenn eine verfügbare Vorlage ausgewählt wird. Seitenlayoutelemente beinhalten Titel, Copyright-Text, Maßstabsleiste, Name des Autors und benutzerdefinierte Textelemente.
Hinweis:
Diese Option ersetzt nur die Eigenschaften vorhandener Elemente. Wenn ein Element nicht in der ausgewählten Layout-Vorlage vorhanden ist, werden die zugehörigen Eigenschaften ignoriert. Wenn eine Layout-Vorlage beispielsweise kein Copyright-Textelement enthält, wird dem Layout auch dann kein neues Copyright-Textelement hinzugefügt, wenn das copyrightText-Element in den layoutOptions angegeben ist.
Alle Eigenschaften dieses Objekts sind optional. Wenn ein Wert einer Eigenschaft angegeben wird, wird das entsprechende Seitenlayoutelement ersetzt, andernfalls wird das vorhandene Element unverändert übernommen.
ExportWebMap-Textelement | Entsprechender dynamischer Text in ArcGIS Pro | Entsprechender dynamischer Text in ArcMap |
---|---|---|
titleText | <dyn type="layout" property="metadata" attribute="title" emptyStr=""/> | <dyn type="document" property="title" /> |
authorText | <dyn type="layout" property="metadata" attribute="contactname" emptyStr=""/> | <dyn type="document" property="author" /> |
copyrightText | <dyn type="layout" property="metadata" attribute="credits" emptyStr=""/> | <dyn type="document" property="credits" /> |
Hinweis:
Weitere Informationen zu dynamicText finden Sie in der ArcGIS-Hilfe.
Syntax | Beispiel |
---|---|
|
|
Beschreibung | |
|
Beschränkungen
Symbole auf Feature-Ebene, die in Notizen-Layern überschrieben werden, werden nicht unterstützt, wenn der Renderertyp "Klassenunterbrechung" oder "einfach" ist.