AnsweredAssumed Answered

Is there any way to edit inline annotation text using ArcPy in ArcGIS Pro?

Question asked by maxreis6 on Oct 1, 2018

I’m using python to automate the creation of an annotation layer for a feature class in ArcGIS Pro 2.2.1 and I’m having issues with the end result as it appears on the map. The text string is compiled in python, and is often larger than the 255 character limit of string fields of feature classes. Therefore, the string is written to the feature class in a series of fields (i.e. fields named “Label1”, “Label2”, “Label3”,… “LabelN”) and the LabelClass expression is edited to display the label as “[Label1] + [Label2] + [Label3]… + [LabelN]”.

The labeling is then converted to annotation. Whenever the label string is greater than 255 characters, the “TextString” field in the annotation is left blank; this isn’t an issue to me because the text still appears on the map correctly (to a point, see below), and can be edited in the attributes pane for each feature.

However, the annotation text does not include anything after 4048 characters. Currently, I’m manually copy and pasting the text from my python window (using the “print()” command to show the whole text string for each feature) and copying it into the “Annotation” section for each annotation feature; at which point the annotation correctly shows all the text I want it to.

Is there a way to do this programmatically with ArcPy? Alternatively, does anyone know how to bypass the 4048 character limit?