public enum HorizontalAlignment : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum HorizontalAlignment Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
public enum HorizontalAlignment : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Public Enum HorizontalAlignment Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
Member | Description |
---|---|
Center | Centered. |
Justify | Justified alignment. |
Left | Left aligned. |
Right | Right aligned. |
//In your config.daml...set the categoryRefID //<tool id="..." categoryRefID="esri_editing_construction_annotation" caption="Create Anno" ...> //Sketch type Point or Line or BezierLine in the constructor... //internal class AnnoConstructionTool : MapTool { // public AnnoConstructionTool() { // IsSketchTool = true; // UseSnapping = true; // SketchType = SketchGeometryType.Point; // protected async override Task<bool> OnSketchCompleteAsync(Geometry geometry) { if (CurrentTemplate == null || geometry == null) return false; // Create an edit operation var createOperation = new EditOperation(); createOperation.Name = string.Format("Create {0}", CurrentTemplate.Layer.Name); createOperation.SelectNewFeatures = true; var insp = CurrentTemplate.Inspector; var result = await QueuedTask.Run(() => { // get the annotation properties class AnnotationProperties annoProperties = insp.GetAnnotationProperties(); // set custom annotation properties annoProperties.TextString = "my custom text"; annoProperties.Color = ColorFactory.Instance.RedRGB; annoProperties.FontSize = 24; annoProperties.FontName = "Arial"; annoProperties.HorizontalAlignment = ArcGIS.Core.CIM.HorizontalAlignment.Right; annoProperties.Shape = geometry; // assign annotation properties back to the inspector insp.SetAnnotationProperties(annoProperties); // Queue feature creation createOperation.Create(CurrentTemplate.Layer, insp); if (!createOperation.IsEmpty) { // Execute the operation return createOperation.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not } else return false; }); return result; }
await QueuedTask.Run(() => { var selection = annoLayer.GetSelection(); if (selection.GetCount() == 0) return; // use the first selelcted feature //at 2.x - var insp = new Inspector(true); var insp = new Inspector(); insp.Load(annoLayer, selection.GetObjectIDs().FirstOrDefault()); // getAnnoProperties should return null if not an annotation feature AnnotationProperties annoProperties = insp.GetAnnotationProperties(); // get the textGraphic CIMTextGraphic textGraphic = annoProperties.TextGraphic; // change text textGraphic.Text = "Hello world"; // set x,y offset via the symbol var symbol = textGraphic.Symbol.Symbol; var textSymbol = symbol as CIMTextSymbol; textSymbol.OffsetX = 2; textSymbol.OffsetY = 3; textSymbol.HorizontalAlignment = HorizontalAlignment.Center; // load the updated textGraphic annoProperties.LoadFromTextGraphic(textGraphic); // assign the annotation properties back insp.SetAnnotationProperties(annoProperties); EditOperation op = new EditOperation(); op.Name = "modify symbol"; op.Modify(insp); if (!op.IsEmpty) { bool result = op.Execute(); //Execute and ExecuteAsync will return true if the operation was successful and false if not } });
System.Object
System.ValueType
System.Enum
ArcGIS.Core.CIM.HorizontalAlignment
Target Platforms: Windows 11, Windows 10