Troubleshooting size and specification text symbols in annotation
Determining the specification size of annotation
Annotation feature class reference scale
Modifying annotation size for the map scale
Modifying specification text symbols
How is the specification size of annotation determined?
A visual specification or the label expression of the annotation feature class determines the text for an annotation feature (including both content and style, the latter including size and color) without regard to the scale of the map. In other words, a visual specification or label expression should create annotation with font sizes that come directly from the specification of the product. For example, if your product specification indicates that Airport annotation should be five points in size on the page, and that it should be in Times New Roman font, the visual specification or label expression should create Airport annotation with a Times New Roman font and a size of five points.
How does the reference scale affect the annotation text and symbol?
Annotation feature classes in ArcGIS have a reference scale, which is the scale at which annotation text and symbols will draw at the expected size. For example, a font size of five points will look like five points on a page layout (and on a printed page at 100 percent zoom) when the map scale is the same as the reference scale of the annotation feature class.
How can I find the annotation size that looks correct on a particular map scale?
An annotation feature class only has one reference scale. However, the Aeronautical Solution provides a number of tools that modify the font sizes of annotation features so that they look the right size for the map in which they are displayed. Create feature-linked annotation, Create non-feature-linked annotation, Update Anno, and Resize Annotation all work together to ensure that annotation always looks the right size for the map. This is done by changing the specification font sizes generated by the visual specification or the label expression of the annotation feature class. Below is an equation that can help you determine the correct size of annotation for the map in which it is displayed:
CorrectSizeForMap = SpecSize * (MapScale / AnnoReferenceScale)
The map scale is found by querying the product library for the scale of the map in which the annotation feature is on.
After correcting the annotation font sizes for the map scale, they must then be corrected for deviations from the specification size by using the Resize Annotation tool. Deviations from the specification font size are stored in the AnnoSizeChange field. Thus, the formula for determining a font size that looks correct for a particular map scale is the following:
StoredSize = (SpecSize - DeviationFromSpecSize) * (MapScale / AnnoReferenceScale)
How can I modify the symbology for an annotation class?
If your annotation class symbology specification changes and you need to modify the annotation class symbology of your annotation classes, you can do so in ArcCatalog by opening the Feature Class Properties dialog box and clicking the Annotation Classes tab. If you are using ArcSDE, you will need a schema lock.
When you change the annotation class symbology of an annotation class, a copy of the modified symbol will be added to the Symbol Collection in the Feature Class Properties dialog box. Existing annotation features that were pointing to the old symbol will not be automatically pointed to the new symbol. You will need to manually calculate the SymbolID field values by querying all the annotation features using the old SymbolID, and then replacing with the new SymbolID, for all annotation features that you want to point to the new symbol.
How does Update Anno affect the specification text symbol?
The Update Anno tool makes sure that the sizes of accent bar gaps and arrowheads are correct for the scale of the map that an annotation feature is on, among other things. To do that, the Update Anno tool needs to know what the "base" or specification size of the accent bar gap and arrowhead is for a particular annotation feature. It can then determine the correct size for a particular map by multiplying the specification size by the ratio between the map scale and the annotation feature class reference scale. The base size of an annotation feature's accent bar gap or arrowhead is the size in the annotation feature's specification text symbol.
If an annotation feature's arrowhead size or accent bar gap size has been changed, the change will be undone after running Update Anno.
How is the specification text symbol determined for an annotation feature?
If an annotation feature is linked to a symbol in the symbol collection (if it has a group symbol), then the annotation feature's group symbol is its specification text symbol. The group symbol of the annotation feature can be found by looking for the symbol in the Symbol Collection with the SymbolID of the annotation feature, on the Annotation tab of the Feature Class Properties dialog box in ArcCatalog.
If the symbol collection for the annotation feature class is missing or corrupt, use the annotation feature's class symbology.
If an annotation feature is not linked to a symbol in the symbol collection (if its text symbol is stored inline), then use the annotation feature's class symbology as its specification text symbol.