public enum TextType : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum TextType Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
public enum TextType : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum TextType Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
Member | Description |
---|---|
CircleParagraph | Circle paragraph text |
EllipseParagraph | Ellipse paragraph text |
None | None- default |
PointText | Point text |
PolygonParagraph | Polygon paragraph text |
RectangleParagraph | Rectangle paragraph text |
SplinedText | Text splined along a line or curve |
//Create curve text with basic text properties. //Construct on the worker thread await QueuedTask.Run(() => { //Build geometry Coordinate2D pt1 = new Coordinate2D(3.6, 7.5); Coordinate2D pt2 = new Coordinate2D(4.26, 8); Coordinate2D pt3 = new Coordinate2D(4.93, 7.1); Coordinate2D pt4 = new Coordinate2D(5.6, 7.5); //At 2.x - CubicBezierBuilder bez = new CubicBezierBuilder(pt1, pt2, pt3, pt4); var bez = new CubicBezierBuilderEx(pt1, pt2, pt3, pt4); CubicBezierSegment bezSeg = bez.ToSegment(); //At 2.x - Polyline bezPl = PolylineBuilder.CreatePolyline(bezSeg); Polyline bezPl = PolylineBuilderEx.CreatePolyline(bezSeg); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol(ColorFactory.Instance.BlackRGB, 24, "Comic Sans MS", "Regular"); //At 2.x - GraphicElement bezTxtElm = LayoutElementFactory.Instance.CreateCurvedTextGraphicElement(layout, bezPl, "Curved Text", sym); // bezTxtElm.SetName("New Splinned Text"); GraphicElement bezTxtElm = ElementFactory.Instance.CreateTextGraphicElement( layout, TextType.SplinedText, bezPl, sym, "Curved Text", "New Splinned Text"); });
//Create polygon paragraph text with basic text properties. //Construct on the worker thread await QueuedTask.Run(() => { //Build geometry List<Coordinate2D> plyCoords = new List<Coordinate2D>(); plyCoords.Add(new Coordinate2D(3.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.1)); plyCoords.Add(new Coordinate2D(3.5, 6.1)); //At 2.x - Polygon poly = PolygonBuilder.CreatePolygon(plyCoords); Polygon poly = PolygonBuilderEx.CreatePolygon(plyCoords); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol(ColorFactory.Instance.GreyRGB, 10, "Arial", "Regular"); string text = "Some Text String that is really long and is <BOL>forced to wrap to other lines</BOL> so that we can see the effects." as String; //At 2.x - GraphicElement polyTxtElm = LayoutElementFactory.Instance.CreatePolygonParagraphGraphicElement(layout, poly, text, sym); // polyTxtElm.SetName("New Polygon Text"); GraphicElement polyTxtElm = ElementFactory.Instance.CreateTextGraphicElement( layout, TextType.RectangleParagraph, poly, sym, text, "New Polygon Text"); //(Optionally) Modify paragraph border CIMGraphic polyTxtGra = polyTxtElm.GetGraphic(); CIMParagraphTextGraphic cimPolyTxtGra = polyTxtGra as CIMParagraphTextGraphic; cimPolyTxtGra.Frame.BorderSymbol = new CIMSymbolReference(); cimPolyTxtGra.Frame.BorderSymbol.Symbol = SymbolFactory.Instance.ConstructLineSymbol(ColorFactory.Instance.GreyRGB, 1.0, SimpleLineStyle.Solid); polyTxtElm.SetGraphic(polyTxtGra); });
//Create circle paragraph text with basic text settings and optionally a modified border. //Construct on the worker thread await QueuedTask.Run(() => { //Build geometry Coordinate2D center = new Coordinate2D(4.5, 4); //At 2.x - EllipticArcBuilder eabCir = new EllipticArcBuilder(center, 0.5, esriArcOrientation.esriArcClockwise); var eabCir = new EllipticArcBuilderEx(center, 0.5, ArcOrientation.ArcClockwise); EllipticArcSegment cir = eabCir.ToSegment(); var polyCir = PolygonBuilderEx.CreatePolygon( PolylineBuilderEx.CreatePolyline(cir)); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol(ColorFactory.Instance.GreenRGB, 10, "Arial", "Regular"); string text = "Circle, circle, circle, circle, circle, circle, circle, circle, circle, circle, circle"; //At 2.x - GraphicElement cirTxtElm = LayoutElementFactory.Instance.CreateCircleParagraphGraphicElement(layout, cir, text, sym); // cirTxtElm.SetName("New Circle Text"); GraphicElement cirTxtElm = ElementFactory.Instance.CreateTextGraphicElement( layout, TextType.CircleParagraph, polyCir, sym, text, "New Circle Text"); //(Optionally) Modify paragraph border CIMGraphic cirTxtGra = cirTxtElm.GetGraphic(); CIMParagraphTextGraphic cimCirTxtGra = cirTxtGra as CIMParagraphTextGraphic; cimCirTxtGra.Frame.BorderSymbol = new CIMSymbolReference(); cimCirTxtGra.Frame.BorderSymbol.Symbol = SymbolFactory.Instance.ConstructLineSymbol(ColorFactory.Instance.GreyRGB, 1.0, SimpleLineStyle.Solid); cirTxtElm.SetGraphic(cirTxtGra); });
//Create ellipse paragraph text with basic text settings and optionally a modified border. //Construct on the worker thread await QueuedTask.Run(() => { //Build geometry Coordinate2D center = new Coordinate2D(4.5, 2.75); //At 2.x - EllipticArcBuilder eabElp = new EllipticArcBuilder(center, 0, 1, 0.45, esriArcOrientation.esriArcClockwise); var eabElp = new EllipticArcBuilderEx(center, 0, 1, 0.45, ArcOrientation.ArcClockwise); EllipticArcSegment ellipse = eabElp.ToSegment(); var polyElp = PolygonBuilderEx.CreatePolygon( PolylineBuilderEx.CreatePolyline(ellipse)); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol(ColorFactory.Instance.BlueRGB, 10, "Arial", "Regular"); string text = "Ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse, ellipse"; //At 2.x - GraphicElement elpTxtElm = LayoutElementFactory.Instance.CreateEllipseParagraphGraphicElement(layout, ellipse, text, sym); // elpTxtElm.SetName("New Ellipse Text"); GraphicElement elpTxtElm = ElementFactory.Instance.CreateTextGraphicElement( layout, TextType.EllipseParagraph, polyElp, sym, text, "New Ellipse Text"); //(Optionally) Modify paragraph border CIMGraphic elpTxtGra = elpTxtElm.GetGraphic(); CIMParagraphTextGraphic cimElpTxtGra = elpTxtGra as CIMParagraphTextGraphic; cimElpTxtGra.Frame.BorderSymbol = new CIMSymbolReference(); cimElpTxtGra.Frame.BorderSymbol.Symbol = SymbolFactory.Instance.ConstructLineSymbol(ColorFactory.Instance.GreyRGB, 1.0, SimpleLineStyle.Solid); elpTxtElm.SetGraphic(elpTxtGra); });
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D center = new Coordinate2D(4.5, 4); var eabCir = new EllipticArcBuilderEx(center, 0.5, ArcOrientation.ArcClockwise); var cir = eabCir.ToSegment(); var poly = PolygonBuilderEx.CreatePolygon( PolylineBuilderEx.CreatePolyline(cir, AttributeFlags.AllAttributes)); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.GreenRGB, 10, "Arial", "Regular"); string text = "Circle, circle, circle"; var graphic = GraphicFactory.Instance.CreateSimpleTextGraphic( TextType.CircleParagraph, poly, sym, text); //Make an element to add to GraphicsLayer or Layout //var ge = ElementFactory.Instance.CreateGraphicElement(container, graphic, // "New Circle Text", true);
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D pt1 = new Coordinate2D(3.5, 7.5); Coordinate2D pt2 = new Coordinate2D(4.16, 8); Coordinate2D pt3 = new Coordinate2D(4.83, 7.1); Coordinate2D pt4 = new Coordinate2D(5.5, 7.5); var bez = new CubicBezierBuilderEx(pt1, pt2, pt3, pt4); var bezSeg = bez.ToSegment(); Polyline bezPl = PolylineBuilderEx.CreatePolyline(bezSeg, AttributeFlags.AllAttributes); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.BlackRGB, 24, "Comic Sans MS", "Regular"); var graphic = GraphicFactory.Instance.CreateSimpleTextGraphic( TextType.SplinedText, bezPl, sym, "Splined text"); //Make an element to add to GraphicsLayer or Layout //var ge = ElementFactory.Instance.CreateGraphicElement(container, graphic);
//Create a simple point text element and assign basic symbology and text settings. //Construct on the worker thread await QueuedTask.Run(() => { //Build 2D point geometry Coordinate2D coord2D = new Coordinate2D(3.5, 10); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.RedRGB, 32, "Arial", "Regular"); string textString = "Point text"; //At 2.x - GraphicElement ptTxtElm = // LayoutElementFactory.Instance.CreatePointTextGraphicElement( // layout, coord2D, textString, sym); //ptTxtElm.SetName("New Point Text"); //ptTxtElm.SetAnchor(Anchor.CenterPoint); //ptTxtElm.SetX(4.5); //ptTxtElm.SetY(9.5); //ptTxtElm.SetRotation(45); //use ElementInfo to set placement properties during create var elemInfo = new ElementInfo() { Anchor = Anchor.CenterPoint, Rotation = 45 }; var ptTxtElm = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.PointText, coord2D.ToMapPoint(), sym, textString, "New Point Text", true, elemInfo); //Change additional text properties ptTxtElm.SetX(4.5); ptTxtElm.SetY(9.5); });
//Create rectangle text with background and border symbology. //Construct on the worker thread await QueuedTask.Run(() => { //Build 2D polygon geometry List<Coordinate2D> plyCoords = new List<Coordinate2D>(); plyCoords.Add(new Coordinate2D(3.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.1)); plyCoords.Add(new Coordinate2D(3.5, 6.1)); //At 2.x - Polygon poly = PolygonBuilder.CreatePolygon(plyCoords); Polygon poly = PolygonBuilderEx.CreatePolygon(plyCoords); //Set symbolology, create and add element to layout //Also notice how formatting tags are using within the text string. CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.GreyRGB, 10, "Arial", "Regular"); string text = "Some Text String that is really long and is " + "<BOL>forced to wrap to other lines</BOL> so that " + "we can see the effects." as String; //At 2.x - GraphicElement polyTxtElm = // LayoutElementFactory.Instance.CreatePolygonParagraphGraphicElement( // layout, poly, text, sym); // polyTxtElm.SetName("New Polygon Text"); GraphicElement polyTxtElm = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.RectangleParagraph, poly, sym, text, "Polygon Paragraph"); //(Optionally) Modify paragraph border CIMGraphic polyTxtGra = polyTxtElm.GetGraphic(); CIMParagraphTextGraphic cimPolyTxtGra = polyTxtGra as CIMParagraphTextGraphic; cimPolyTxtGra.Frame.BorderSymbol = new CIMSymbolReference(); cimPolyTxtGra.Frame.BorderSymbol.Symbol = SymbolFactory.Instance.ConstructLineSymbol( ColorFactory.Instance.GreyRGB, 1.0, SimpleLineStyle.Solid); polyTxtElm.SetGraphic(polyTxtGra); });
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D coord2D = new Coordinate2D(3.5, 10); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.RedRGB, 32, "Arial", "Regular"); string textString = "Point text"; var elemInfo = new ElementInfo() { Anchor = Anchor.BottomLeftCorner }; GraphicElement ptTxtElm = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.PointText, coord2D.ToMapPoint(), sym, textString, "New Point Text", true, elemInfo);
//Must be on QueuedTask.Run(() => { ... //Build geometry List<Coordinate2D> plyCoords = new List<Coordinate2D>(); plyCoords.Add(new Coordinate2D(3.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 7)); plyCoords.Add(new Coordinate2D(4.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.7)); plyCoords.Add(new Coordinate2D(5.5, 6.1)); plyCoords.Add(new Coordinate2D(3.5, 6.1)); Polygon poly = PolygonBuilderEx.CreatePolygon(plyCoords); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.GreyRGB, 10, "Arial", "Regular"); string text = "Some text string that is really long and " + "<BOL>wraps to other lines</BOL>" + " so that we can see the effects."; var ge = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.PolygonParagraph, poly, sym, text, "New Polygon Text", true);
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D ll = new Coordinate2D(3.5, 4.75); Coordinate2D ur = new Coordinate2D(5.5, 5.75); Envelope env = EnvelopeBuilderEx.CreateEnvelope(ll, ur); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.WhiteRGB, 10, "Arial", "Regular"); string text = "Some text string that is really long and " + "<BOL>wraps to other lines</BOL>" + " so that we can see the effects."; //(Optionally) Modify border and background with 50% transparency //CIMGraphic recTxtGra = recTxtElm.Graphic; //CIMParagraphTextGraphic cimRecTxtGra = recTxtGra as CIMParagraphTextGraphic; //CIMSymbolReference cimRecTxtBorder = cimRecTxtGra.Frame.BorderSymbol; // //CIMLineSymbol lineSym = SymbolFactory.Instance.ConstructLineSymbol( // ColorFactory.Instance.BlackRGB, 1.0, SimpleLineStyle.Solid); //cimRecTxtBorder.Symbol = lineSym; // //CIMSymbolReference cimRecTxtBkgrd = cimRecTxtGra.Frame.BackgroundSymbol; //CIMPolygonSymbol polySym = SymbolFactory.Instance.ConstructPolygonSymbol( // ColorFactory.Instance.GreyRGB, SimpleFillStyle.Solid); // //CIMColor symCol = polySym.GetColor(IElementContainer container); //symCol.SetAlphaValue(50); //cimRecTxtBkgrd.Symbol = polySym; //recTxtElm.SetGraphic(recTxtGra); var ge = ElementFactory.Instance.CreateTextGraphicElement(container, TextType.RectangleParagraph, env, sym, text, "New Rectangle Text");
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D center = new Coordinate2D(4.5, 4); var eabCir = new EllipticArcBuilderEx(center, 0.5, ArcOrientation.ArcClockwise); var cir = eabCir.ToSegment(); var poly = PolygonBuilderEx.CreatePolygon( PolylineBuilderEx.CreatePolyline(cir, AttributeFlags.AllAttributes)); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.GreenRGB, 10, "Arial", "Regular"); string text = "Circle, circle, circle"; GraphicElement cirTxtElm = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.CircleParagraph, poly, sym, text, "New Circle Text", false);
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D pt1 = new Coordinate2D(3.5, 7.5); Coordinate2D pt2 = new Coordinate2D(4.16, 8); Coordinate2D pt3 = new Coordinate2D(4.83, 7.1); Coordinate2D pt4 = new Coordinate2D(5.5, 7.5); var bez = new CubicBezierBuilderEx(pt1, pt2, pt3, pt4); var bezSeg = bez.ToSegment(); Polyline bezPl = PolylineBuilderEx.CreatePolyline(bezSeg, AttributeFlags.AllAttributes); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.BlackRGB, 24, "Comic Sans MS", "Regular"); var ge = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.SplinedText, bezPl, sym, "this is the bezier text", "New Bezier Text", true, new ElementInfo() { Anchor = Anchor.CenterPoint });
//Must be on QueuedTask.Run(() => { ... //Build geometry Coordinate2D center = new Coordinate2D(4.5, 2.75); var eabElp = new EllipticArcBuilderEx(center, 0, 1, 0.45, ArcOrientation.ArcClockwise); var ellipse = eabElp.ToSegment(); var poly = PolygonBuilderEx.CreatePolygon( PolylineBuilderEx.CreatePolyline(ellipse, AttributeFlags.AllAttributes)); //Set symbolology, create and add element to layout CIMTextSymbol sym = SymbolFactory.Instance.ConstructTextSymbol( ColorFactory.Instance.BlueRGB, 10, "Arial", "Regular"); string text = "Ellipse, ellipse, ellipse"; GraphicElement ge = ElementFactory.Instance.CreateTextGraphicElement( container, TextType.PolygonParagraph, poly, sym, text, "New Ellipse Text", false);
System.Object
System.ValueType
System.Enum
ArcGIS.Desktop.Layouts.TextType
Target Platforms: Windows 11, Windows 10