ExportWebMap-Spezifikation

Wenn Sie versuchen, eine Karte mit dem Geoverarbeitungs-Service PrintingTools zu drucken, der im ArcGIS-Server enthalten ist, müssen Sie eine JSON-Darstellung (JavaScript Object Notation) 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 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.

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

"mapOptions" : {
 "extent" : {
  "xmin" : <xmin>,
  "ymin" : <ymin>,
  "xmax" : <xmax>,
  "ymax" : <ymax>,
  "spatialReference" : {<spatialReference>}
 },
 "scale" : <mapScale>,
 "rotation" : <mapRotation>,
 "spatialReference" :  {<spatialReference>},
 "time" : [
  <timeInstant> | <startTime>,<endTime>
 ]
}
"mapOptions" : {
 "extent" : {
  "xmin":-12933906.537,
  "ymin":3993856.886,
  "xmax":-12933371.998,
  "ymax":3994375.189,
  "spatialReference" : {
   "wkid" : 102100
  }
 },
 "scale" : 1234.5,
 "rotation" : -45,
 "spatialReference" : {
  "wkid" : 102100
 },
 "time" : [
  1199145600000,
  1230768000000
 ]
}

Beschreibung

  • Ausdehnung: Eine erforderliche Eigenschaft, die die Ausdehnung der Karte definiert. Der Raumbezug des Ausdehnungsobjekts ist optional. Wenn er nicht bereitgestellt wird, wird davon ausgegangen, dass er im Raumbezug der Karte enthalten ist. Wenn das Seitenverhältnis der Kartenausdehnung sich von der Größe der Karte auf der Ausgabeseite oder von exportOptions:outputSize unterscheidet, kann die Ausgabekarte mehr Features aufweisen.
  • scale (optional): Der Kartenmaßstab, bei dem die Karte exportiert werden soll. Diese Eigenschaft ist optional, wird jedoch zur Erzielung optimaler Ergebnisse empfohlen. Die Maßstabseigenschaft ist besonders nützlich, wenn für die Karten-Services auf dieser Webkarte maßstabsabhängige Layer oder Bezugsmaßstäbe festgelegt wurden. Da die Karte, die Sie in der Webanwendung anzeigen, kleiner sein kann als die Ausgabekarte (z. B. 8,5 x 11 Zoll bzw. A4-Format), weist die Ausgabekarte einen anderen Maßstab auf und es könnten Unterschiede bei den Features und/oder Symbolen der Webanwendung im Vergleich zur Ausgabekarte sichtbar werden.

    Wenn ein Maßstab verwendet wird, hat dieser Vorrang vor der Ausdehnung, die Ausgabekarte wird jedoch mit dem angeforderten Maßstab gezeichnet und auf dem Mittelpunkt der Ausdehnung zentriert.

  • rotation (optional): Diese Eigenschaft stellt die Gradzahl dar, um die der Datenrahmen gedreht wird, von Norden aus gegen den Uhrzeigersinn gemessen. Um den Datenrahmen im Uhrzeigersinn zu drehen, verwenden Sie einen negativen Wert.
  • spatialReference (optional): Der Raumbezug der Karte. Folgende Reihenfolge wird bevorzugt, wenn die Eigenschaft spatialReference fehlt:
    1. mapOptions.extent.spatialReference
    2. baseMap.baseMapLayers.spatialReference
    3. Raumbezug der Kartenvorlage
  • time (optional): Wenn ein zeitbezogener Layer vorhanden ist und dieser zu einer bestimmten Zeit gezeichnet werden soll, geben Sie diese Eigenschaft an. Diese Liste kann eine oder mehrere Elemente beinhalten. Fügen Sie zwei Elemente (startTime gefolgt von endTime) hinzu, um eine Zeitausdehnung darzustellen, oder stellen Sie nur ein Zeitelement bereit, um einen Zeitpunkt darzustellen. Uhrzeiten werden immer in UTC angegeben.

operationalLayers

Die operationalLayers-Liste 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.

HinweisHinweis:

Für einen Karten-Service, Feature-Service oder Image-Service verwenden Sie eine URL, die auf den REST-Endpunkt des Service verweist. SOAP-Endpunkte werden nicht unterstützt.

Syntax für operationale Layer

"operationalLayers" : [
 {
  "id" : "<webmapOperationalLayerId>",
  "url" : "<url1>",
  "token" : "<tokenString1>",
  "title" : "<title1>",
  "opacity" : <opacity1>,
  "visibility" : <true | false>,
  "minScale" : <minScale1>,
  "maxScale" : <maxScale1>
 }
]

Beschreibung

  • id (optional): Eine Zeichenfolge, die einen operationalen Layer eindeutig identifiziert. Diese wird meist für Legenden benötigt.
  • url: Der Endpunkt eines Service. Er wird für "featureCollection" nicht benötigt.
  • token (optional): Ein Token für den Zugriff auf einen gesicherten Service.
  • title (optional): Name eines operationalen Layers. Wenn er in der Legende angezeigt wird, sollte die Legende des Layouts dies unterstützten.
  • visibility (optional): Der Standardwert ist "true".
  • opacity (optional): Wertbereiche von 0 bis 1 (Standard), wobei 1 undurchsichtig und 0 vollständig transparent bedeutet.
  • minScale (optional): Der Layer wird nicht dargestellt, wenn er über diesen Maßstab hinaus verkleinert wird.
  • maxScale (optional): Der Layer wird nicht dargestellt, wenn er über diesen Maßstab hinaus vergrößert wird.

Syntax für einen Karten-Service-Layer

Beispiel

"operationalLayers" : [
 {
  "url" : "<url1>",
  "title" : "<title1>",
  "opacity" : <opacity2>,
  "gdbVersion": "<gdbVersion>",
  "visibleLayers" : [
   <layerId1>,
   <layerId2>
  ],
  "layers" : [
   {
    "id": <sublayerId1>,
    "layerDefinition": {
     "definitionExpression": "<definitionExpression>",
     "layerTimeOptions": {
      "useTime": <true | false>,
      "timeDataCumulative": <true | false>,
      "timeOffset": <timeOffset1>,
      "timeOffsetUnits": "<esriTimeUnits>"
     },
     "drawingInfo": {
      "renderer" : {<renderer>},
      "transparency" : <transparency>,
      "scaleSymbols" : <true | false>,
      "showLabels" : <true | false>,
      "labelingInfo" : {<labelingInfo>},
     },
     "source": {<layerSource>},
     "gdbVersion": "<Geodatabase version name>"
    }
   }
  ]
 }
]
"operationalLayers" : [
 {
  "url" : "http://servicesbeta.esri.com/ArcGIS/rest/
           services/HomelandSecurity/operations/
           MapServer",
  "title" : "Homeland security operations",
  "opacity" : 0.8,
  "visibleLayers" : [
   0,
   1
  ]
 }
]

Beschreibung

  • visibleLayers (optional): Array von Sublayer-IDs, die innerhalb des Karten-Service-Layers sichtbar gemacht werden sollten. Wenn diese Eigenschaft nicht angegeben wird, wird der operationale Layer mit den Standard-Sichtbarkeitsstatus der einzelnen Sublayer angezeigt. Sie müssen die ID des Gruppen-Layers nicht angeben. Beachten Sie, dass "layers" Vorrang vor "visibleLayers" haben, wenn ein Karten-Service dynamische Layer unterstützt. Verwenden Sie keine dynamicLayers für Karten-Services, es wird nur "layerDefinition" in der Eigenschaft "layers" unterstützt.
  • layers (optional): Liste der zu exportierenden Layer. Bei Karten-Services, die dynamische Layer verwenden, werden alle im Array "layers" festgelegten Layer exportiert, während "visibleLayers" ignoriert werden
  • drawingInfo (optional): Verwenden Sie diese Eigenschaft zum Überschreiben der Darstellungseigenschaften eines Sublayers, beispielsweise den Renderer des Sublayers.
    • renderer (optional): Wenn diese Eigenschaft angegeben ist, wird der ursprüngliche Renderer des Sublayers überschrieben.
  • source (optional): Stellt die Quelle eines Layers dar, der dem Karten-Service pro Anforderung dynamisch hinzugefügt wird. Weitere Informationen zum Definieren der Quelle finden Sie in der Referenz zu ArcGIS-Server-REST-APIs (verfügbar über einen Link aus dem Services-Verzeichnis).
  • gdbVersion (optional): Geben Sie diese Eigenschaft an, wenn Features aus einer anderen Geodatabase-Version dargestellt werden sollen. Sie können diese Eigenschaft auf der Ebene eines operationalen Layers definieren, um alle Layer auf die angegebene Version umzustellen. Alternativ können Sie sie als Sublayer in einem "layers"-Array definieren, um die Geodatabase-Version für einen einzelnen Layer zu ändern.

Syntax für einen Feature-Layer

Beispiel

"operationalLayers" : [
 {
  "url" : "<url1>",
  "title" : "<title1>",
  "opacity" : <opacity2>,
  "layerDefinition" : {
   "drawingInfo" : {
    "renderer" : {<renderer1>}
   },
   "definitionExpression" : "<definitionExpression1>",
   "objectIds" : [
    <oid1>,
    <oid2>
   ],
   "timeInfo" : {  //optional
    "trackIdField" : "<trackIdFieldName>"
   },
   "geometry" : {<geometry>},
   "geometryType" : "<geometryType>",
   "spatialRel" : "<spatialRel>",
   "relationParam" : "<relationParam>",
   "gdbVersion" : "<geodatabaseVersionName>",
   "source": {<layerSource>}
  },
  "selectionObjectIds" : [
   <oid1>,
   <oid2>
  ],
  "selectionSymbol" : {<symbol>}
 }
]
"operationalLayers" : [
 {
  "url" : "http://servicesbeta.esri.com/ArcGIS/rest/
           services/Hydrography/Watershed173811/
           FeatureServer/1",
  "title" : "Watershed",
  "opacity" : 1,
  "layerDefinition" : {
   "drawingInfo" : {
    "renderer" : {<renderer>}
   },
   "definitionExpression" : "Type = 1",
   "objectIds" : [
    534,
    434
   ]
  },
  "selectionObjectIds" : [
   434
  ],
  "selectionSymbol" : {<symbol>}
 }
]

Beschreibung

  • url (erforderlich): Die URL des Layers. Diese Eigenschaft sollte mit "/dynamicLayer" enden, wenn ein Feature-Layer auf einem Layer aus einem Karten-Service basiert, der dynamische Layer verwendet.
  • drawingInfo (optional): Legt den Renderer für diesen Layer fest.
    • Für das Rendering mit einem Zeit-Renderer geben Sie neben dem Renderer die Eigenschaften latestObservationRenderer, trackLinesRenderer und observationAger an.
    • observationAger (optional): Der Zeit-Renderer unterstützt zwei observationalAger-Typen: rampAger und classBreaksAger. Für jede beliebige Anforderung kann ein Layer entweder rampAger oder classBreaksAger enthalten, jedoch nicht beide Typen.
  • definitionExpression (optional): Eine SQL-Anweisung, die die Darstellung von Features einschränkt.
  • objectIds (optional): Schränkt die darzustellenden Features auf Grundlage von Objekt-IDs ein.
  • timeInfo (optional):
    • trackIdField: Das Feld, das ein oder mehrere angegebene Objekte, die beobachtet werden, eindeutig darstellt. Wenn dieses Feld den Wert NULL hat oder fehlt, dann wird nur die aktuelle Beobachtung mit dem latestObservationRenderer dargestellt.
  • geometry (optional): Schränkt darzustellende Features nach einer Geometrie ein.
  • geometryType (optional): Diese Eigenschaft ist erforderlich, wenn eine Geometrie angegeben wird.
  • spatialRel (optional): Die räumliche Beziehung muss während der Abfrage auf die Eingabegeometrie angewendet werden.
  • relationParam (optional): Die Funktion für räumliche Beziehung kann während der Abfrage angewendet werden. Ein Beispiel für diese Funktion für räumliche Beziehung ist "FFFTTT***".
  • selectionObjectIds (optional): Hebt die Features mit den angegebenen Objekt-IDs mit dem bereitgestellten Symbol hervor; selectionSymbol muss eingestellt werden.
  • selectionSymbol (optional): Features werden mit diesem Symbol hervorgehoben. Dies ist erforderlich, wenn selectionObjectIds angegeben wird.
  • gdbVersion (optional): Gibt den Namen einer Geodatabase-Version an, wenn Sie eine andere Version verwenden als die, auf die der Karten- oder Feature-Service verweist.
  • source (erforderlich): Diese Eigenschaft ist nur dann erforderlich, wenn ein Feature-Layer auf einem Karten-Service basiert, der dynamische Layer verwendet.

Syntax für einen Image-Service-Layer

Beispiel

"operationalLayers" : [
 {
  "url" : "<url1>",
  "title" : "<title1>",
  "opacity" : <opacity2>,
  "noData" : <noDataValue>,
  "format" : "<jpgpng | png | png8 | png24 | jpg | 
              bmp | gif | tiff >",
  "interpolation" : "<RSP_BilinearInterpolation | 
                     RSP_CubicConvolution | 
                     RSP_Majority | 
                     RSP_NearestNeighbor>",
  "compressionQuality" : <compress>,
  "bandIds" : [
   <bandId1>,
   <bandId2>
  ],
  "mosaicRule" : "<mosaicRule>",
  "renderingRule" : "<renderingRule>"
 }
]
"operationalLayers" : [
 {
  "url" : "http://ais3/ArcGIS/rest/services/QB16/
           ImageServer",
  "title" : "Satellite image from 1990",
  "opacity" : 0.8,
  "bandIds" : [
   0,
   1,
   2
  ]
 }
]

Beschreibung

HinweisHinweis:

Weitere Informationen zu Image-Service-Layern finden Sie in der Referenz zu ArcGIS-REST-APIs.

Syntax für einen WMS-Service-Layer

"operationalLayers" : [
 {
  "url" : "<url1>",
  "title" : "<title1>",
  "type" : "wms",
  "opacity" : <opacity1>,
  "version" : "<wmsServerVersion>",
  "format" : "<jpg | png8 | png24 | png32>",
  "transparentBackground" : <true | false>,
  "layers" : [
   {"name": "<layerName1>"},
   {"name": "<layerName2>"}
  ],
  "visibleLayers" : [
   "<layerName1>",
   "<layerName2>"
  ],
  "styles" : [
   "<style1>",
   "<style2>"
  ]
 }
]

Beschreibung

  • type (required): Für WMS-Layer muss dies als "wms" angegeben werden.
  • format (optional): Das vom Server angeforderte Image-Format.
  • transparentBackground (optional): Wenn der Wert auf "true" eingestellt ist, wird der Hintergrund transparent, vorausgesetzt, das angeforderte Bildformat unterstützt eine transparente Farbe. (JPEG ist ein Beispiel für ein Bildformat, das keine transparente Farbe unterstützt.) Der Standardwert ist "false".
  • visibleLayers (optional): Array von Sublayer-Namen, die innerhalb des WMS-Service-Layers sichtbar gemacht werden sollen. Die Reihenfolge ist ebenfalls wichtig; sie muss den Anforderungen des WMS-Service entsprechen. Wenn es nicht angegeben wird, werden alle Layer des WMS-Service sichtbar gemacht.
  • layers (optional): Ein Array von Sublayer-Namen, die der Karte hinzugefügt werden sollen. Wenn es nicht angegeben wird, werden alle Layer eines WMS-Service der Karte hinzugefügt.
  • styles (optional): Verwenden Sie diese Eigenschaft, um den Standarddarstellungs-Style eine Sublayers zu überschreiben. Stellen Sie beim Festlegen dieser Eigenschaft sicher, dass die Anzahl und die Reihenfolge der Styles mit dem visibleLayers-Array übereinstimmen. Wenn der Style eines bestimmten Sublayers nicht geändert werden soll, können Sie einen leeren String übergeben, beispielsweise "Styles" : ["Autobahnen","","Bevölkerung"].
  • version (optional): Die WMS-Version, zu der Sie eine Verbindung herstellen möchten. Standardmäßig wird die aktuelle Version vom angegebenen WMS-Service unterstützt.

Syntax für einen clientseitigen Image-Service-Layer

Beispiel

"operationalLayers" : [
 {
  "type" : "image",
  "title" : "<title1>",
  "opacity" : <opacity2>,
  "extent" : {
   "xmin" : <xmin>,
   "ymin" : <ymin>,
   "xmax" : <xmax>,
   "ymax" : <ymax>,
   "spatialReference" : {<spatialReference>}
  },
  "url" : "<url1>",
  "imageData" : "<base64EncodedImageData>"
 }
]
"operationalLayers" : [
 {
  "type" : "image",
  "title" : "heat map",
  "opacity" : 0.75,
  "extent" : {
   "xmin":-12933906.537,
   "ymin":3993856.886,
   "xmax":-12933371.998,
   "ymax":3994375.189,
   "spatialReference" : {
    "wkid" : 102100
   }
  },
  "url" : "http://myMachine/anImage.png",
  "imageData" : "iVBORw0KGg....",
 }
]

Beschreibung

  • type (required): Für diese Art von Layer muss der Typ "Image" sein.
  • extent (required): Das kleinste umgebende Rechteck, in das das Bild passt.
  • url (optional): Die URL zu einem Bild, das dargestellt werden soll. Dies ist nur dann erforderlich, wenn imageData nicht übergeben wird.
  • imageData (optional): Das als base64 codierte Bild. Dies ist erforderlich, wenn die URL-Eigenschaft nicht übergeben wird.

Syntax für clientseitige Grafiken

"operationalLayers" : [
 {
  "featureCollection": {
   "layers": [
    {
     "layerDefinition": {
      "name": "<layerName>",
      "geometryType": "<esriGeometryType>",
      "drawingInfo": {<drawingInfo>},
      "timeInfo" : {  //optional
       "startTimeField" : "<fieldName>",
       "endTimeField" : "<fieldName>",
       "trackIdField" : "<trackIdFieldName>"
      },
      "objectIdField": "<objectIdFieldName>",  //optional
      "fields": [  //optional
       {
        "name": "<fieldName>",
        "type": "<esriFieldType>",
        "alias": "<fieldAliasName>"
       }
      ]
     },
     "featureSet": {
      "features": [
       {
        "geometry": {<geometry>},
        "attributes": {  //optional
         "<fieldName>": "<value>"
        },
        "symbol": {<symbol>}  //overrides symbol
		                              defined in the renderer
       }
      ]
     }
    }
   ]
  }
 }
]

Beschreibung

  • layers (erforderlich): Sammlung von Layern. Ein Layer verfügt über zwei Eigenschaften – layerDefinition und featureSet.
  • layerDefinition (erforderlich): Enthält Eigenschaften, die einen Layer definieren – name, geometryType, drawingInfo, objectIdField und fields.
  • name (optional): Name des Layers.
  • geometryType (erforderlich): Für Text-Layer muss der Geometrietyp esriGeometryPoint sein.
  • drawingInfo (optional): Wenn drawingInfo fehlt, werden Grafiken mithilfe von Symbolen symbolisiert.
  • timeInfo (optional):
    • startTimeField: Der Name des Feldes mit der Startzeit für ein Feature. Das Feld muss vom Typ "datetime" und der Wert muss in UTC angegeben sein.
    • endTimeField (optional): Der Name des Feldes mit der Endzeit für ein Feature. Das Feld muss vom Typ "datetime" und der Wert muss in UTC angegeben sein. Legen Sie diese Eigenschaft nicht fest, wenn mit den Daten nur eine Uhrzeit verknüpft ist (unmittelbar).
    • trackIdField (optional): Das Feld, das ein oder mehrere angegebene Objekte, die beobachtet werden, eindeutig darstellt. Wenn dieses Feld den Wert NULL hat oder fehlt, dann wird nur die aktuelle Beobachtung mit dem latestObservationRenderer dargestellt.
  • objectIdField (optional): Name des Feldes, das Objekt-IDs enthält.
  • fields (optional): Sammlung von Feldern.
  • featureSet (erforderlich): Feature-Container.
  • features (erforderlich): Sammlung von Features.
  • geometry (erforderlich): Geometrie, die das Feature oder die Grafik definiert.
  • attributes (optional): Sammlung von Feature-Attributen.
  • symbol (optional): Wenn diese Eigenschaft angegeben wird, überschreibt dieses Symbol das im Renderer definierte Symbol.

Syntax für Dateien mit kommagetrennten Werten (CSV) nach URL

Beispiel

"operationalLayers" : [
 {
  {
   "type" : "CSV",
   "url" : "<url>",
   "layerDefinition" : {
    "drawingInfo": {
     "renderer": {<renderer>}
    }
   },
   "locationInfo" : {
    "latitudeFieldName" : "<latitudeFieldName>",
    "longitudeFieldName" : "<longitudeFieldName>"
   }
  }
 }
]
"operationalLayers": [
 {
  "type": "CSV",
  "url": "http://servicesbeta.esri.com/demos/exp/data/earthquakes.csv",
  "id": "Earthquakes",
  "title": "Earthquakes",
  "visibility": true,
  "opacity": 1,
  "layerDefinition": {
   "drawingInfo": {
    "renderer": {
     "symbol": {
      "height": 15,
      "type": "esriPMS",
      "url": "http://static.arcgis.com/images/Symbols/Basic/RedSphere.png",
      "width": 15
     },
     "type": "simple"
    },
    "transparency": 0
   }
  },
  "locationInfo": {
   "latitudeFieldName": "lat",
   "longitudeFieldName": "lon"
  }
 }
]

Beschreibung

  • latitudeFieldName (erforderlich): Der Name des Feldes, das die Y-Koordinate enthält.
  • longitudeFieldName (erforderlich): Der Name des Feldes, das die X-Koordinate enthält.

Weitere Eigenschaften

HinweisHinweis:

Weitere Informationen zu den folgenden Eigenschaften finden Sie in der Referenz zu ArcGIS-REST-APIs.

  • Quelle
  • Renderer
  • Symbol
  • textSymbol
  • labelingInfo
  • Geometrie
  • geometryType
  • spatialRel
  • relationParam

Syntax für die Definition von drawingInfo für einen Zeit-Renderer

Beispiel

"drawingInfo": {
 "observationAger": {<symbolAger>},
 "latestObservationRenderer": {<renderer>},
 "trackLinesRenderer": {<renderer>},
 "renderer": {<renderer>}
}
"drawingInfo": {
 "observationAger": {
  "alphaRange": [
   0,
   255
  ]
 },
 "latestObservationRenderer": {
  "type": "simple",
  "symbol": {
   "type": "esriPMS",
   "url": "http://help.arcgis.com/.../hurr_100_icon.png",
   "contentType": "image/png",
   "width": 30,
   "height": 30
  }
 },
 "trackLinesRenderer": {
  "type": "simple",
  "symbol": {
   "type": "esriSLS",
   "style": "esriSLSSolid",
   "width": 1,
   "color": [
    0,
    0,
    0,
    255
   ]
  }
 },
 "renderer": {
  "type": "simple",
  "symbol": {
   "type": "esriSMS",
   "style": "esriSMSCircle",
   "size": 24,
   "outline": {
    "color": [
     255,
     255,
     255,
     255
    ],
    "width": 1
   }
  }
 }
}

Syntax für die Definition von symbolAger

//rampAger
{
 "colorRange": [
                {<color>}, //for oldest events
                {<color>}  //for newest events
 ],
 "alphaRange": [
                <alpha>, //for oldest events
                <alpha>  //for newest events
 ],
 "sizeRange": [
                <size>, //for oldest events
                <size>  //for newest events
 ]
}

//classBreaksAger
{
 "timeUnits": "<esriTimeUnits>",
 "agerClassBreakInfos" : [{<agerClassBreakInfo>},...]
}

Syntax für die Definition von agerClassBreakInfo

{
 "oldestAge": <age>,
 "color": {<color>},
 "alpha": <alpha>,
 "size": <size>
}

Beschreibung

  • Der Zeit-Renderer wird nur von Feature-Layern, nicht von clientseitigen Grafik-Layern oder dynamischen Karten-Service-Layern unterstützt.
  • Alpha ist ein Ganzzahlwert im Bereich von 0 bis 255.

Geoverarbeitungsergebnis

Es gibt zwei Methoden zum Einbeziehen eines Geoverarbeitungsergebnisses:

  1. Wenn ein Geoverarbeitungsergebnis als Feature-Set zurückgegeben und als Grafik auf dem Client dargestellt wird, senden Sie das Ergebnis als Feature-Erfassung.
  2. Wenn das Ergebnis vom Ergebnis-Karten-Service eines Auftrags dargestellt wird, fügen Sie einen neuen Karten-Service-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 Server: http://{myMachine:6080}/arcgis/rest/services/{GPJobMapServiceName}/MapServer/jobs/{job_id}
    • Geoverarbeitungsergebnis aus Versionen vor 10.1 Server: http://{myMachine}/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://myMachine/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

"baseMap" : {
 "title" : "<title>",
 "baseMapLayers" :  [
  {
   "url" : "<url1>",
   "opacity" : <opacity1>
  },
  {
   "url" : "<url2>",
   "opacity" : <opacity2>
  }
 ]
}
"baseMap" : {
 "title" : "Shared Imagery Basemap",
 "baseMapLayers" :  [
  {
   "url" : "http://services.arcgisonline.com/ArcGIS/
            rest/services/ESRI_Imagery_World_2D/
            MapServer",
  },
  {
   "url" : "http://services.arcgisonline.com/ArcGIS/
            rest/services/CSP_Imagery_World_2D/
            MapServer",
  }
 ]
}

Syntax für Bing Maps als basemapLayer

Beispiel

"baseMap" : {
 "title" : "<title>",
 "baseMapLayers" :  [
  {
   "id" : "<id1>",
   "type" : "<BingMapsRoad | BingMapsAerial | 
             BingMapsHybrid>",
   "culture" : "<Bing Maps supported culture>",
   "key" : "<bing_key>" //optional
  }
 ]
}
"baseMap" : {
 "title" : "Bing Maps",
 "baseMapLayers" :  [
  {
   "id" : "BingMap",
   "visibility" : true,
   "type" : "BingMapsRoad",
   "culture" : "fr-ca"
  }
 ]
}

Syntax für OpenStreetMap als basemapLayer

Beispiel

"baseMap" : {
 "title" : "<title>",
 "baseMapLayers" :  [
  {
   "type" : "OpenStreetMap",
   "url" : "<url>",  //optional
   "credits" : "<credits>"  //optional
  }
 ]
}
"baseMap" : {
 "title" : "OpenCycle Map",
 "baseMapLayers" :  [
  {
   "type" : "OpenStreetMap",
   "url" : "http://a.tile.opencyclemap.org/cycle"
  }
 ]
}

Beschreibung

  • URL (optional): Bei fehlender Angabe wird standardmäßig "openstreetmap.org" verwendet.
  • Quellennachweis (optional): Quellennachweis für den Layer Dies hat keine Auswirkungen, wenn keine URL angegeben ist.

Syntax für WMTS als basemapLayer

"baseMap" : {
 "title" : "<title>",
 "baseMapLayers" :  [
  {
   "type" : "wmts",
   "url" : "<url1>",
   "layer" : "<layerName>",    //optional
   "style" : "<style>",        //optional
   "format" : "<imageFormat>", //optional
   "tileMatrixSet" : "<tileMatrixSet>"  //optional
  }
 ]
}

exportOptions

Dieses Objekt gibt die Einstellungen für die Ausgabekarte an.

Syntax

Beispiel

"exportOptions" : {
 "dpi" : <dpi>,
 "outputSize" :  [
  <width>,
  <height>
 ]
}
"exportOptions": {
 "dpi" : 300,
 "outputSize" :  [
  500,
  500
 ]
}

Beschreibung

  • dpi (optional): Die Auflösung in DPI (Dots per Inch, Punkte pro Zoll). Die Standardeinstellung ist 96 dpi.
  • outputSize (optional): Die Größe der Karte in Pixel. Die Größe muss definiert werden, wenn eine leere Zeichenfolge oder MAP_ONLY (ohne Anführungszeichen) als Wert an den layout_template-Parameter übergeben wird. Wenn layout_template nicht als MAP_ONLY angegeben oder eine leere Zeichenfolge ist, hat layout_template Vorrang vor outputSize.

layoutOptions

Mit dieser Option werden die Einstellungen für unterschiedliche, verfügbare Seitenlayoutelemente definiert, und sie wird nur zum Auswählen verfügbarer Vorlagen verwendet. Seitenlayoutelemente beinhalten Titel, Copyright-Text, Maßstabsleiste, Name des Autors und benutzerdefinierte Elemente.

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 beispielsweise eine Layout-Vorlage keinen Copyright-Text enthält, kann layoutOptions kein neues Copyright-Textelement hinzufügen.

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 ArcMap

titleText

<dyn type="document" property="title" />

authorText

<dyn type="document" property="author" />

copyrightText

<dyn type="document" property="credits" />

HinweisHinweis:

Weitere Informationen zu dynamicText finden Sie in der ArcGIS-Hilfe.

Syntax

Beispiel

"layoutOptions" : {
 "titleText" : "<title>",
 "authorText" : "<authorName>",
 "copyrightText" : "<copyright>",
 "scaleBarOptions" :  {
  "metricUnit" : "<meters | kilometers>" ,
  "metricLabel" : "<metricUnitLabel>",
  "nonMetricUnit" : "<feet | yards | miles | 
                    nauticalMiles>" ,
  "nonMetricLabel" : "<nonMetricUnitLabel>"
 },
 "customTextElements" : [
  {"<textElementName1>" : "<value1>"},
  {"<textElementName2>" : "<value2>"}
 ],
 "legendOptions" : {
  "operationalLayers" : [
   {
    "id" : "<webmapOperationalLayerId>",
    "sublayerIds" : [  //array of strin or number
      <mapServerSublayerId1>,
      <mapServerSublayerId2>
    ]
   }
  ]
 }
}
"layoutOptions": {
 "titleText" : "City Land Use Map",
 "authorText" : "Print by: XYZ",
 "copyrightText" : "© esri",
 "scaleBarOptions" :  {
  "metricUnit" : "kilometers",
  "metricLabel" : "km",
  "nonMetricUnit" : "miles",
  "nonMetricLabel" : "mi"
 }
 "customTextElements" : [
  {"townshipName" : "Town ABC"}
 ],
 "legendOptions": {
  "operationalLayers": [
   { //for dynamic mapservicelayer
    "id": "myMapserviceLayer",
    "subLayerIds": [ //array of integer
     0,
     1 
    ]
   },
   { //for WMS layer
    "id": "myWMSLayer",
    "subLayerIds": [ //array of string
     "layer1",
     "layer2" 
    ]
   },
   { //for FeatureLayer
    "id": "myFeatureLayer"
   }
  ]
 }
}

Beschreibung

  • titleText (optional): Der Text des Textelements für Kartentitel wird aktualisiert, wenn er im Layout vorhanden ist.
  • authorText (optional): Der Text des Autortextelements wird aktualisiert, wenn er im Layout vorhanden ist.
  • copyrightText (optional): Der Text des Copyright-Textelements wird aktualisiert, wenn er im Layout vorhanden ist.
  • scaleBarOptions (optional): Mit diesen Optionen wird eine Maßstabsleiste aktualisiert, sofern vorhanden.
    • metricUnit (optional): Stellt die Einheiten der Maßstabsleiste auf metrische Einheiten ein.
    • metricLabel (optional): Zeichenfolge, die angibt, wie Einheiten beschriftet werden, z. B. KM, Kilometer oder km. Wenn dies nicht festgelegt wird oder eine leere Zeichenfolge übergeben wird, wird der Textwert der Einheit verwendet.
    • nonMetricUnit (optional): Stellt die Einheiten der Maßstabsleiste auf nichtmetrische Einheiten ein.
    • nonMetricLabel (optional): Zeichenfolge, die angibt, wie Einheiten beschriftet werden sollen, z. B. Meilen oder mi. Wenn dies nicht angegeben wird oder eine leere Zeichenfolge übergeben wird, wird der Textwert der Einheit verwendet.
  • customTextElements (optional): Dies ist ein Array von Namenwertpaaren. Diese Eigenschaft muss verwendet werden, wenn Sie den Text eines Textelements (der kein dynamischer Text ist) im Seitenlayout aktualisieren möchten. Die Werte müssen Zeichenfolgen sein.
  • legendOptions (optional): Legt Eigenschaften eines Legendenelements im Layout fest.
    • operationalLayers (optional): Gibt die operationalen Layer an, deren Legenden dem Layout hinzugefügt werden.
      • id: Zeichenfolge, die die ID des Layers darstellt. Die ID muss eindeutig sein und mit der ID des Layers im operationalLayers-Element übereinstimmen, in dem der operationale Layer definiert wird.
      • subLayerIds (optional): Ein Array von Sublayern, deren Elementtypen "Zeichenfolge" oder "lang" sind und die kontextabhängig vom operationalen Layer-Typ sind. Beispielsweise muss es für einen Karten-Service-Layer eine Zahl, für einen WMS-Layer hingegen eine Zeichenfolge sein. Es wird empfohlen, die subLayerIds-Werte für operationale Layer festzulegen, die Sublayer aufweisen. Wenn sie bei Karten-Service- und WMS-Layern ausgelassen werden, werden dem Legendenelement im Layout Legenden aus allen Sublayern hinzugefügt. Für Feature- oder Grafik-Layer muss die sublayers-Eigenschaft nicht festgelegt werden.

Einschränkungen

Symbole auf Feature-Ebene, die in Notizen-Layern überschrieben werden, werden nicht unterstützt, wenn der Renderertyp "Klassenunterbrechung" oder "einfach" ist.

9/23/2013