ArcGIS Pro 3.7 API Reference Guide
ArcGIS.Core.CIM Namespace / CIMPointSymbol Class / HaloSize Property
Example

In This Topic
    HaloSize Property (CIMPointSymbol)
    In This Topic
    Gets or sets the size of the halo that extends beyond the symbol shape.
    Syntax
    Public Property HaloSize As Double
    public double HaloSize {get; set;}
    Example
    Set halo property of north arrow
    {
      //Set the CIM halo properties of a north arrow.
    
      //Reference the first selected north arrow element
      var northArrow = LayoutView.Active.GetSelectedElements().OfType<NorthArrow>().First();
    
      //Note: Must be on QueuedTask.Run
      //Get definition of north arrow...
      var cim = northArrow.GetDefinition() as CIMMarkerNorthArrow;
    
      //this halo symbol is 50% transparent, no outline (i.e. 0 width)
      //First construct a polygon symbol to use in the Halo
      //Polygon symbol will need a fill and a stroke
      var polyFill = SymbolFactory.Instance.ConstructSolidFill(ColorFactory.Instance.CreateRGBColor(0, 0, 0, 50));
      var polyStroke = SymbolFactory.Instance.ConstructStroke(ColorFactory.Instance.BlackRGB, 0);
      var haloPoly = SymbolFactory.Instance.ConstructPolygonSymbol(polyFill, polyStroke);
    
      //Set the north arrow definition of HaloSymbol and HaloSize 
      ((CIMPointSymbol)cim.PointSymbol.Symbol).HaloSymbol = haloPoly;
      ((CIMPointSymbol)cim.PointSymbol.Symbol).HaloSize = 3;//size of the halo
    
      //Apply the CIM changes back to the element
      northArrow.SetDefinition(cim);
    }
    Requirements

    Target Platforms: Windows 11 Home, Pro, Enterprise (64 bit)

    ArcGIS Pro version: 3.0 or higher.
    See Also