NOTE: Feature-linked annotation feature classes can be created and edited in ArcInfo and ArcEditor, but they are read-only in ArcView.
There are two kinds of annotation in the geodatabase—standard and feature-linked. Standard annotation is not formally associated with features in the geodatabase. An example of standard annotation is the text on a map for a mountain range. No specific feature represents the mountain range, but it is an area you want to mark.
Feature-linked annotation is associated with a specific feature in another feature class in the geodatabase. The text in feature-linked annotation reflects the value of a field or fields from the feature to which it's linked. For example, the water transmission mains in a water network can be annotated with their names, which are stored in a field in the transmission mains feature class.
View an illustration.
Annotation links to features through a
with messaging. The feature class being annotated is the origin class in the relationship, and the annotation feature class is the destination class. As with other composite relationships, the origin feature controls the destination feature. If an attribute value for the origin feature changes, the linked annotation that is based on this attribute will automatically update to reflect the change. When the origin feature is moved or rotated, the linked annotation also moves or rotates with it. When an origin feature is deleted from the geodatabase, the linked annotation feature is also deleted.
In the water network example, a hydrant may be too close to a busy intersection and may need to be moved 50 feet. When the hydrant is moved, its linked annotation moves with it. In the same network, the name of a transmission main may change. When the value in its name field is modified, the text stored in its linked annotation feature is automatically updated with the new name.
A feature-linked annotation feature class inside a feature dataset should link to a feature class within the same dataset. Similarly, stand-alone feature-linked annotation feature classes should link to stand-alone feature classes in the same geodatabase.
An annotation feature class can be linked to only one feature class, but a feature class can have any number of linked annotation feature classes.
Standard and feature-linked geodatabase annotation feature classes contain one or more annotation classes. Each annotation class contains properties that determine how a subset of annotation in the feature class displays.
For both standard annotation and feature-linked annotation, these properties are
- Default symbology applied when creating new annotation
- A visible scale range
For feature-linked annotation, the following properties are added:
- How the annotation text strings will be defined based on attributes in the linked feature class
- Which features in the linked feature class will be annotated by the annotation class
- How to place new annotation
For example, if you have an annotation feature class for cities, you could have annotation classes of varying text sizes and scale ranges for small, medium, and large cities—all managed within a single annotation feature class. Annotation classes save you from having to define and maintain multiple annotation feature classes.
You can create and modify annotation classes. You create annotation classes when you create an empty annotation feature class with ArcCatalog or when you convert
to annotation. When you convert labels, each
converts to an annotation class. Once you've created an annotation feature class, you can create and modify annotation classes with the Feature Class Properties dialog box.
To maximize ArcMap display and query performance, always define a visible scale range for each annotation class so annotation features only draw when you're zoomed in enough to read their text.
If you have more than one annotation class, the annotation classes are implemented as
in the annotation feature class. To create new annotation for an annotation class, choose the class as the target on the Editing toolbar.
You can create and modify annotation classes with any license, including ArcView.
An annotation feature class contains a collection of one or more text symbols held in a
symbol collection that you define as part of the process of defining your annotation feature class. Every time you create a new annotation feature, you assign it one of the predefined symbols that is in your symbol collection.
When you create your annotation feature class, you will provide a default text symbol. Once the annotation feature class has been created, you can create additional text symbols as part of the feature class's symbol collection at any time. Do this by right-clicking and selecting the Properties panel for the annotation class in ArcCatalog. Select the annotation tab to add additional symbols to the symbol collection as shown here.
Each text symbol in the collection contains properties that describe how the annotation feature is drawn, such as font, size, and color. For example, if you have annotation for small, medium, and large cities, create three text symbols of varying font sizes to assign to the annotation. Because each annotation feature needn't store its own symbol properties, ArcGIS is able to reduce storage requirements and maximize display and query performance. Committing to a limited list of symbols can help you promote standards for any new annotation features you create.
Once you've created the symbols, assign them to annotation features when editing in ArcMap.
When assigning symbols to annotation features in ArcMap, you may discover that the text symbols you created do not contain the properties you need for one or more annotation features. For example, you may require a smaller font size to fit annotation into a congested area. One approach is to create a new text symbol with the new properties in ArcCatalog, then assign the new text symbol to the annotation features in an ArcMap edit session.
Creating a new symbol for every unique set of properties you require could result in a long list of symbols that is difficult to work with. ArcMap allows you to modify symbol properties on a feature-by-feature basis. When editing in ArcMap, you can select annotation and change any symbol property for that annotation.
Editing certain symbol properties on a feature-by-feature basis causes annotation to lose its reference to its associated text symbol in the collection. When this happens, the annotation feature stores all its symbol properties. This increases the storage requirement and reduces display and query performance for the annotation.
The properties you are able to edit on a feature-by-feature basis while continuing to maintain reference to a text symbol in the collection are
- X and y offset
- Horizontal and vertical alignment
- Flip angle
- Font name, size, color, character spacing, character width, and background symbol
- Font—bold, italic, and underline
- Word spacing
- Leading property
For example, if you reduce an annotation feature's font size from 12 to 8, the annotation feature still references a predefined symbol; however, it stores its own font size of 8. If you change a property not listed above, such as giving the annotation feature a halo, the annotation feature loses reference to its associated text symbol and stores all the symbol properties.
You can always use text formatting tags to modify the format of a portion of a piece of annotation. This lets you create mixed-format annotation, for example, where one word in a sentence is underlined. Formatting tags always take precedence over an annotation feature's symbol properties.
Learn more about using text formatting tags.
When deciding what symbols to store in your annotation feature class, choose a default symbol for each annotation class when you create it, then add any other symbols containing the properties you'll commonly need. For properties that are seldom needed, you can apply them on a feature-by-feature basis. A limited number of features storing their own symbol properties will have little impact on the storage requirements and performance of a feature class.
Learn how to create text symbols
When editing your annotation feature class, you may see a red bounding box instead of your annotation text. This indicates that the SymbolID for the annotation feature has become disconnected from its text symbol.
This can happen in two ways:
- The annotation has been copied and pasted from one annotation feature class to another feature class and the SymbolID from the first annotation feature class does not exist in the symbol collection for the second annotation feature class.
- The annotation feature class has been edited in ArcCatalog, and the text symbol that the SymbolID is referencing has been deleted.
To resolve this, you can do one of the following:
- Create a new symbol in the symbol collection and calculate the SymbolIDs of your annotation features to it.
- Calculate the SymbolIDs of your annotation features to a new text symbol number.
Learn more about calculating values in your annotation feature class.
Learn more about making field calculations.
At the ArcGIS 9.2 release, the storage of annotation features was changed due to new properties in element and geometry spatial references. In past releases, such a change would have required the editing of previous geodatabase versions to be blocked; this is no longer the case. The Annotation feature class now takes advantage of the same functionality as the Save A Copy command in the ArcGIS applications, to save the proper version of annotation features for the geodatabase release that is being edited. Therefore, ArcGIS 9.2 is able to edit both 9.0 and 9.1 geodatabase annotation. Geodatabase annotation in an 8.3 or earlier geodatabase still requires updating to enable editing.
Learn more about the Save a Copy command.
Learn more about annotation feature class editing properties.