When a label does not fit in the available space, you can have the Maplex Label Engine split it into two or more parts and stack them to reduce its horizontal length. When you check Stack label, the Maplex Label Engine automatically stacks labels that are too long. When the Street placement style is selected, the Maplex Label Engine uses special stacking rules for streets, which are not editable.
Caution:
A label is not dynamically stacked if the label expression contains the base label or composite callout part text formatting tags. You can still stack using scripting.
You can control how the Maplex Label Engine stacks labels, including the following:
- How the stacked label text is aligned
- What characters are used to indicate where the text should be split
- Whether and where these characters should appear in the label
- Whether these characters should appear at the beginning and the end of the label
- Whether all labels should be split at the stacking character or only when there is not enough room
- The minimum and maximum number of characters per line and the maximum number of lines
Stacked label alignment
You can choose how the text in stacked labels is aligned. There are several options:
- Choose best—Depending on the location of the stacked label relative to the feature, the Maplex Label Engine aligns the text to the center, left, or right. This is beneficial for placement because the stacked labels can be moved around to potentially fit other labels on the map.
- Constrain left or right—Depending on the location of the stacked label, the Maplex Label Engine aligns the text to either the right or left. Text of labels placed to the left of a feature are right aligned, and text of labels placed to the right of a feature are left aligned.
- Constrain left—The stacked label text is left aligned regardless of its location.
- Constrain right—The stacked label text is right aligned regardless of its location.
- Constrain center—The stacked label text is center aligned regardless of its location.
Stack characters
You can specify where the label is split when it is stacked by using stacking characters. Spaces and commas are frequently used to split words and are the default stacking characters, but you can use any character to split your labels. If you do not want your labels to be split at spaces and commas, you can remove them from the stacking character list. Choosing a special stacking character can be useful when you must split a label in a specific place. You can also control how and when the stacking character splits labels. When the Visible check box is checked, the stacking character appears on the map. If it is left unchecked, the character does not appear on the map. If Split after is checked, the split happens after the stacking character; otherwise, it occurs before the character. If Forced split is checked, a split always happens at the character, and stacking always occurs.
The following is an example where all three parameters are checked:
Label expression
[Field1] & "&" & [Field2]
Field1 value = Jekyll
Field2 value = Hyde
Stacking character = &
Label string before being placed
Jekyll & Hyde
After placement
Jekyll &
Hyde
In some cases, the stacking character will also be at the beginning and end of the label. Use the Remove leading and trailing separators option to keep or remove them.
Stack limits
You can set limits on the number of lines and the number of characters per line to control the shape of a stacked label. These limits can be used to prevent short labels from being stacked while allowing longer labels to be stacked. If the stacking character limits cannot be satisfied for a given label, the label is split as close to the limits as possible.
- Maximum number of lines specifies the maximum number of lines, from 1 to 50, into which a label can be split.
The label stacks to only two rows when curved placement styles is used.
- Minimum characters per line specifies the minimum number of characters, from 1 to 8, that must be in the shortest part of a stacked label. For example, if this parameter is set to 3, the label St David is not stacked, even if the space character is used as a stacking character.
- Maximum characters per line specifies the maximum number of characters, from 2 to 80, that can be on a given line of a label.
- Ensure that the Maplex Label Engine is enabled.
- Ensure that List By Labeling is the active method of displaying the Contents pane. Click List by Labeling .
- Choose a label class in the Contents pane and click the Labeling tab.
- On the Labeling tab, in the Label Placement group, click Label Placement Properties .
- In the Labeling pane, click Position and click the Fitting strategy tab .
- Expand Stack.
- Check the Stack label check box.
When the Street placement style is selected, the ability to edit the stacking parameters is not available. The Maplex Label Engine uses special stacking rules for streets.
- Specify the Horizontal alignment to use: Choose best, Constrain left or right, Constrain left, Constrain right, or Constrain center.
- By default, the space character and comma are already entered into the Separator list. The space character is special and is created by clicking the space bar. The word space is then shown in the list.
To add other separator characters, click New and type the stacking character. To remove a stacking character, select the character and click Remove.
Complete the following for each stacking separator:
- Check or uncheck the Visible check box—If it is unchecked, the stacking character is not visible and is removed from the stacked label. The character is only removed if it is used to stack a text string.
- Check or uncheck the Forced split check box—If it is checked, all the labels are split at the stacking character, whether or not there is enough space for the label on one line.
- Check or uncheck the Split after check box—If it is checked, the label is split after the stacking character.
Specify whether or not to keep or remove stacking characters from the beginning and end of the text string using the Remove leading and trailing separators check box.
- Specify the stacking limits for the label class.
- Maximum number of lines specifies the maximum number of lines, from 1 to 50, into which a label can be split.
The label stacks to only two rows when curved placement styles is used.
- Minimum characters per line specifies the minimum number of characters, from 1 to 8, that must be in the shortest part of a stacked label.
- Maximum characters per line specifies the maximum number of characters, from 2 to 80, that can be on a given line of a label.
- Maximum number of lines specifies the maximum number of lines, from 1 to 50, into which a label can be split.