ArcGIS Pro 3.0 API Reference Guide
ArcGIS.Desktop.Mapping Namespace / SymbolFactory Class / ConstructTextSymbol Method / ConstructTextSymbol(CIMPolygonSymbol,Double,String) Method
ArcGIS.Core.CIM.CIMPolygonSymbol
The size of the text symbol to construct.
The font family name of the text symbol to construct.
Example

ConstructTextSymbol(CIMPolygonSymbol,Double,String) Method
Constructs a default text symbol given its polygon symbol, size, and font family name. This method must be called on the MCT. Use QueuedTask.Run.
Syntax

Parameters

symbol
ArcGIS.Core.CIM.CIMPolygonSymbol
size
The size of the text symbol to construct.
fontFamilyName
The font family name of the text symbol to construct.

Return Value

Exceptions
ExceptionDescription
This method must be called within the lambda passed to QueuedTask.Run
Remarks
If the font family is null or does not exist the current default font family will be assigned. The default font style for the font family will be assigned.
Example
Construct a Text Symbol With Options
QueuedTask.Run(() =>
{
  //using the default font
  var textSym1 = SymbolFactory.Instance.ConstructTextSymbol();
  var textSym2 = SymbolFactory.Instance.ConstructTextSymbol(
                     ColorFactory.Instance.BlueRGB, 14);

  //using a specific font
  var textSym3 = SymbolFactory.Instance.ConstructTextSymbol("Arial");
  var textSym4 = SymbolFactory.Instance.ConstructTextSymbol(
                    "Arial", "Narrow Bold");

  //or query available fonts to ensure the font is there
  var all_fonts = SymbolFactory.Instance.GetAvailableFonts();
  var font = all_fonts.FirstOrDefault(f => f.fontName == "Arial");
  if (!string.IsNullOrEmpty(font.fontName))
  {
    var textSym5 = SymbolFactory.Instance.ConstructTextSymbol(font.fontName);
    //or with a font+style
    var textSym6 = SymbolFactory.Instance.ConstructTextSymbol(
                                    font.fontName, font.fontStyles.First());
  }

  //overloads - font + color and size, etc
  var textSym7 = SymbolFactory.Instance.ConstructTextSymbol(
                  ColorFactory.Instance.BlueRGB, 14, "Times New Roman", "Italic");

  //custom symbol - black stroke, red fill
  var poly_symbol = SymbolFactory.Instance.ConstructPolygonSymbol(
    SymbolFactory.Instance.ConstructSolidFill(ColorFactory.Instance.RedRGB),
    SymbolFactory.Instance.ConstructStroke(ColorFactory.Instance.BlackRGB, 1));
  var textSym8 = SymbolFactory.Instance.ConstructTextSymbol(
          poly_symbol, 14, "Georgia", "Bold");

});

Requirements

Target Platforms: Windows 11, Windows 10, Windows 8.1

ArcGIS Pro version: 2.9 or higher.
See Also