FRAMES | NO FRAMES
Symbol Objects

Overview

This document discusses the JSON symbol (and its supporting) objects as returned by the REST API.

The following objects are discussed here:

Color

Color is represented as a 4-element array. The 4 elements represent values for red, green, blue and alpha in that order. Values range from 0 through 255.

JSON Syntax

[ <red>, <green>, <blue>, <alpha> ]

JSON Example

[ 67, 0, 255, 40 ]

Simple Marker Symbol

Simple marker symbols can be used to symbolize point geometries. The type property for simple marker symbols is esriSMS.

JSON Syntax

{
"type" : "esriSMS",
"style" : "< esriSMSCircle | esriSMSCross | esriSMSDiamond | esriSMSSquare | esriSMSX >",
"color" : <color>,
"size" : <size>,
"angle" : <angle>,
"xoffset" : <xoffset>,
"yoffset" : <yoffset>,
"outline" : { //if outline has been specified
  "color" : <color>,
  "width" : <width>
}
}

JSON Example

{
"type": "esriSMS",
 "style": "esriSMSSquare",
 "color": [76,115,0,255],
 "size": 8,
 "angle": 0,
 "xoffset": 0,
 "yoffset": 0,
 "outline": 
  {
  "color": [152,230,0,255],
   "width": 1
  }
}

Simple Line Symbol

Simple line symbols can be used to symbolize polyline geometries. The type property for simple line symbols is esriSLS.

JSON Syntax

{
"type" : "esriSLS",
"style" : "< esriSLSDash | esriSLSDashDotDot | esriSLSDot | esriSLSNull | esriSLSSolid >",
"color" : <color>,
"width" : <width>
}

JSON Example

{
"type": "esriSLS",
"style": "esriSLSDot",
"color": [115,76,0,255],
"width": 1
}
 

Simple Fill Symbol

Simple line symbols can be used to symbolize polygon geometries. The type property for simple line symbols is esriSFS.

JSON Syntax

{
"type" : "esriSFS",
"style" : "< esriSFSBackwardDiagonal | esriSFSCross | esriSFSDiagonalCross | esriSFSForwardDiagonal | esriSFSHorizontal | esriSFSNull | esriSFSSolid | esriSFSVertical >",
"color" : <color>,
"outline" : <simpleLineSymbol> //if outline has been specified
}

JSON Example

{
  "type": "esriSFS",
  "style": "esriSFSSolid",
  "color": [115,76,0,255],
    "outline": {
     "type": "esriSLS",
     "style": "esriSLSSolid",
     "color": [110,110,110,255],
     "width": 1
	 }
}

Picture Marker Symbol

Picture marker symbols can be used to symbolize point geometries. The type property for picture marker symbols is esriPMS.

These symbols include the base64 encoded imageData as well as a url that could be used to retrieve the image from the server. Note that this is a relative URL. It can be dereferenced by accessing the map layer image resource or the feature layer image resource.

JSON Syntax

{
"type" : "esriPMS",
"url" : "<imageUrl>", //relative URL
"imageData" : "<base64EncodedImageData>",
"contentType" : "<imageContentType>",
"color" : <color>,
"width" : <width>,
"height" : <height>,
"angle" : <angle>,
"xoffset" : <xoffset>,
"yoffset" : <yoffset>
}

JSON Example

{
	"type" : "esriPMS", 
	"url" : "471E7E31", 
	"imageData" : "iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAYAAACpSkzOAAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAMNJREFUSIntlcENwyAMRZ+lSMyQFcI8rJA50jWyQuahKzCDT+6h0EuL1BA1iip8Qg/Ex99fYuCkGv5bKK0EcB40YgSE7bnTxsa58LeOnMd0QhwGXkxB3L0w0IDxPaMqpBFxjLMuaSVmRjurWIcRDHxaiWZuEbRcEhpZpSNhE9O81GiMN5E0ZRt2M0iVjshek8UkTQfZy8JqGHYP/rJhODD4T6wehtbB9zD0MPQwlOphaAxD/uPLK7Z8MB5gFet+WKcJPQDx29XkRhqr/AAAAABJRU5ErkJggg==", 
	"contentType" : "image/png", 
	"color" : null, 
	"width" : 19.5, 
	"height" : 19.5, 
	"angle" : 0, 
	"xoffset" : 0, 
	"yoffset" : 0
}

Picture Fill Symbol

Picture fill symbols can be used to symbolize polygon geometries. The type property for picture fill symbols is esriPFS.

These symbols include the base64 encoded imageData as well as a url that could be used to retrieve the image from the server. Note that this is a relative URL. It can be dereferenced by accessing the map layer image resource or the feature layer image resource.

JSON Syntax

{
"type" : "esriPFS",
"url" : "<imageUrl>", //relative URL
"imageData" : "<base64EncodedImageData>",
"contentType" : "<imageContentType>",
"color" : <color>,
"outline" : <simpleLineSymbol>, //if outline has been specified
"width" : <width>,
"height" : <height>,
"angle" : <angle>,
"xoffset" : <xoffset>,
"yoffset" : <yoffset>,
"xscale": <xscale>,
"yscale": <yscale>
}

JSON Example

 {
	"type" : "esriPFS", 
	"url" : "866880A0", 
	"imageData" : "iVBORw0KGgoAAAANSUhEUgAAAFQAAABUCAYAAAAcaxDBAAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAAM9JREFUeJzt0EEJADAMwMA96l/zTBwUSk5ByLxQsx1wTUOxhmINxRqKNRRrKNZQrKFYQ7GGYg3FGoo1FGso1lCsoVhDsYZiDcUaijUUayjWUKyhWEOxhmINxRqKNRRrKNZQrKFYQ7GGYg3FGoo1FGso1lCsoVhDsYZiDcUaijUUayjWUKyhWEOxhmINxRqKNRRrKNZQrKFYQ7GGYg3FGoo1FGso1lCsoVhDsYZiDcUaijUUayjWUKyhWEOxhmINxRqKNRRrKNZQrKFYQ7GGYh/hIwFRFpnZNAAAAABJRU5ErkJggg==", 
	"contentType" : "image/png", 
	"color" : null, 
	"outline" : 
	{
		"type" : "esriSLS", 
		"style" : "esriSLSSolid", 
		"color" : [110,110,110,255], 
		"width" : 1
	}, 
	"width" : 63, 
	"height" : 63, 
	"angle" : 0, 
	"xoffset" : 0, 
	"yoffset" : 0, 
	"xscale" : 1, 
	"yscale" : 1
  }

Text Symbol

Text symbols are used to add text to a feature (labeling). The type property for text symbols is esriTS.

JSON Syntax

{
  "type" : "esriTS",
  "color" : <color>,
  "backgroundColor" : <color>,
  "borderLineColor" : <color>,
  "verticalAlignment" : "<baseline | top | middle | bottom>",
  "horizontalAlignment" : "<left | right | center | justify>",
  "rightToLeft" : <true | false>,
  "angle" : <angle>,
  "xoffset" : <xoffset>,
  "yoffset" : <yoffset>,
  "kerning" : <true | false>,
  "font" : {
    "family" : "<fontFamily>",
    "size" : <fontSize>,
    "style" : "<italic | normal | oblique>",
    "weight" : "<bold | bolder | lighter | normal>",
    "decoration" : "<line-through | underline | none>"
  }
}

JSON Example

{
     "type": "esriTS",
     "color": [78,78,78,255],
     "backgroundColor": null,
     "borderLineColor": null,
     "verticalAlignment": "bottom",
     "horizontalAlignment": "left",
     "rightToLeft": false,
     "angle": 0,
     "xoffset": 0,
     "yoffset": 0,
     "font": {
      "family": "Arial",
      "size": 12,
      "style": "normal",
      "weight": "bold",
      "decoration": "none"
	}
}