public interface TextSymbolizer extends TextSymbolizer, Symbolizer
A symbolizer is obtained by specifying one of a small number of different types of symbolizer and then supplying parameters to override its default behaviour.
The text symbolizer describes how to display text labels and the like.
The details of this object are taken from the OGC Styled-Layer Descriptor Report (OGC 02-070) version 1.0.0.:
<xsd:element name="TextSymbolizer" substitutionGroup="sld:Symbolizer">
<xsd:annotation>
<xsd:documentation>
A "TextSymbolizer" is used to render text labels according to
various graphical parameters.
</xsd:documentation>
</xsd:annotation>
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="sld:SymbolizerType">
<xsd:sequence>
<xsd:element ref="sld:Geometry" minOccurs="0"/>
<xsd:element ref="sld:Label" minOccurs="0"/>
<xsd:element ref="sld:Font" minOccurs="0"/>
<xsd:element ref="sld:LabelPlacement" minOccurs="0"/>
<xsd:element ref="sld:Halo" minOccurs="0"/>
<xsd:element ref="sld:Fill" minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
Renderers can use this information when displaying styled features, though it must be remembered that not all renderers will be able to fully represent strokes as set out by this interface. For example, opacity may not be supported.
Notes:
Modifier and Type | Interface and Description |
---|---|
static class |
TextSymbolizer.DisplacementMode
DisplacementMode associates an angle with each enum value
|
static class |
TextSymbolizer.PolygonAlignOptions
Enumerated options that can be used with polygonAlign.
|
Modifier and Type | Field and Description |
---|---|
static String |
ALLOW_OVERRUNS_KEY
When false does not allow labels on lines to get beyond the beginning/end of the line.
|
static String |
AUTO_WRAP_KEY
Number of pixels are which a long label should be split into multiple lines.
|
static String |
CHAR_SPACING_KEY
Option expand/shrink character spacing, expressed as a value in pixels.
|
static String |
CONFLICT_RESOLUTION_KEY
Enables conflict resolution (default, true) meaning no two labels will be allowed to overlap.
|
static boolean |
DEFAULT_ALLOW_OVERRUNS
We allow labels that are longer than the line to appear by default
|
static int |
DEFAULT_AUTO_WRAP
Auto wrapping long labels default
|
static double |
DEFAULT_CHAR_SPACING
Default extra char spacing (no extra)
|
static boolean |
DEFAULT_CONFLICT_RESOLUTION
By default, put each label in the conflict resolution map
|
static boolean |
DEFAULT_FOLLOW_LINE
If labels with a line placement should follow the line shape or be just tangent
|
static boolean |
DEFAULT_FORCE_LEFT_TO_RIGHT
Force labels to a readable orientation (so that they don't look "upside down")
|
static double |
DEFAULT_GOODNESS_OF_FIT
Default value for the goodness of fit threshold
|
static boolean |
DEFAULT_GROUP
Default grouping value, false
|
static boolean |
DEFAULT_KERNING
Default behaviour is to perform kerning
|
static boolean |
DEFAULT_LABEL_ALL_GROUP
If in case of grouping all resulting lines have to be labelled
|
static int |
DEFAULT_LABEL_REPEAT
Default repetition distance for labels (<= 0 -> no repetition)
|
static double |
DEFAULT_MAX_ANGLE_DELTA
When label follows line, the max angle change between two subsequent characters, keeping it
low avoids chars overlaps.
|
static int |
DEFAULT_MAX_DISPLACEMENT
Default max displacement
|
static int |
DEFAULT_MIN_GROUP_DISTANCE
Default min distance between labels in the same group (-1 means no min distance)
|
static boolean |
DEFAULT_PARTIALS
Default behaviour is to not truncate labels on the border of the display area.
|
static TextSymbolizer.PolygonAlignOptions |
DEFAULT_POLYGONALIGN
Default value for the polygonAlign
|
static boolean |
DEFAULT_REMOVE_OVERLAPS
Default value for REMOVE_OVERLAPS_KEY
|
static int |
DEFAULT_SPACE_AROUND
By default, don't add space around labels
|
static boolean |
DEFAULT_STRIKETHROUGH_TEXT
If labels text should be stroke through or not.
|
static boolean |
DEFAULT_UNDERLINE_TEXT
If labels text should be underline or not.
|
static double |
DEFAULT_WORD_SPACING
Default extra word spacing (no extra)
|
static String |
DISPLACEMENT_MODE_KEY
Option to control displacement of labels.
|
static String |
FOLLOW_LINE_KEY
When true activates curved labels on linear geometries.
|
static String |
FORCE_LEFT_TO_RIGHT_KEY
When true forces labels to a readable orientation, when false they make follow the line
orientation even if that means the label will look upside down (useful when using TTF symbol
fonts to add direction markers along a line)
|
static String |
GOODNESS_OF_FIT_KEY
Sets the percentage of the label that must sit inside the geometry to allow drawing the
label.
|
static String |
GRAPHIC_MARGIN_KEY
Pixels between the stretched graphic and the text, applies when graphic stretching is in use
|
static String |
GRAPHIC_RESIZE_KEY
Stretches the graphic below a label to fit the label size.
|
static String |
GROUP_KEY
If true, geometries with the same labels are grouped and considered a single entity to be
labeled.
|
static String |
KERNING_KEY
Option to enable automatic adjustment of the space between characters
|
static String |
LABEL_ALL_GROUP_KEY
When false, only the biggest geometry in a group is labelled (the biggest is obtained by
merging, when possible, the original geometries).
|
static String |
LABEL_REPEAT_KEY
When positive it's the desired distance between two subsequent labels on a "big" geometry.
|
static String |
MAX_ANGLE_DELTA_KEY
When drawing curved labels, max allowed angle between two subsequent characters.
|
static String |
MAX_DISPLACEMENT_KEY
The distance, in pixel, a label can be displaced from its natural position in an attempt to
find a position that does not conflict with already drawn labels.
|
static String |
MIN_GROUP_DISTANCE_KEY
Minimum distance between two labels in the same label group.
|
static String |
PARTIALS_KEY
Option to truncate labels placed on the border of the displayArea (display partial labels).
|
static String |
POLYGONALIGN_KEY
Option overriding manual rotation to align label rotation automatically for polygons.
|
static String |
REMOVE_OVERLAPS_KEY
If, in case of grouping, self overlaps have to be taken into account and removed (expensive!)
|
static String |
SPACE_AROUND_KEY
The minimum distance between two labels, in pixels
|
static String |
STRIKETHROUGH_TEXT_KEY
When TRUE labels text will be stroked through, the line will have the same color of the text.
|
static String |
UNDERLINE_TEXT_KEY
When TRUE labels text will be underline, the underline will have the same color of the text.
|
static String |
WORD_SPACING_KEY
Option expand word spacing, expressed as a value in pixels.
|
Modifier and Type | Method and Description |
---|---|
void |
addToOptions(String key,
String value)
Deprecated.
Please use getOptions().put( key, value )
|
List<Font> |
fonts()
Direct access to device independent Fonts used to render the label.
|
Fill |
getFill()
Returns the object that indicates how the text will be filled.
|
Font |
getFont()
Initial Font to use when rendering this symbolizer.
|
Font[] |
getFonts()
Deprecated.
use fonts()
|
Halo |
getHalo()
A halo fills an extended area outside the glyphs of a rendered text label to make the label
easier to read over a background.
|
Expression |
getLabel()
Returns the expression that will be evaluated to determine what text is displayed.
|
LabelPlacement |
getLabelPlacement()
A LabelPlacement specifies how a text element should be rendered relative to its geometric
point or line.
|
String |
getOption(String key)
Deprecated.
Please use getOptions.get( key )
|
Map<String,String> |
getOptions()
return the map of option
|
LabelPlacement |
getPlacement()
Deprecated.
Please use getLabelPlacement()
|
Expression |
getPriority()
Priority -- null = use the default labeling priority Expression = an expression that
evaluates to a number (ie.
|
void |
setFill(Fill fill)
Sets the object that indicates how the text will be filled.
|
void |
setFont(Font font)
Set initial font used to render label.
|
void |
setFonts(Font[] fonts)
Deprecated.
use fonts() to directly modify list of fonts in place
|
void |
setHalo(Halo halo)
A halo fills an extended area outside the glyphs of a rendered text label to make the label
easier to read over a background.
|
void |
setLabel(Expression label)
Sets the expression that will be evaluated to determine what text is displayed.
|
void |
setLabelPlacement(LabelPlacement labelPlacement)
A LabelPlacement specifies how a text element should be rendered relative to its geometric
point or line.
|
void |
setPlacement(LabelPlacement labelPlacement)
Deprecated.
Please use setLabelPlacement
|
void |
setPriority(Expression e)
Priority -- null = use the default labeling priority Expression = an expression that
evaluates to a number (ie.
|
accept
accept, getDescription, getGeometry, getGeometryPropertyName, hasOption, setDescription, setGeometry, setGeometryPropertyName, setName, setUnitOfMeasure
getName, getUnitOfMeasure
static final String GROUP_KEY
static final boolean DEFAULT_GROUP
static final String SPACE_AROUND_KEY
static final int DEFAULT_SPACE_AROUND
static final String MAX_DISPLACEMENT_KEY
static final int DEFAULT_MAX_DISPLACEMENT
static final String MIN_GROUP_DISTANCE_KEY
static final int DEFAULT_MIN_GROUP_DISTANCE
static final String LABEL_REPEAT_KEY
static final int DEFAULT_LABEL_REPEAT
static final String LABEL_ALL_GROUP_KEY
static final boolean DEFAULT_LABEL_ALL_GROUP
static final String ALLOW_OVERRUNS_KEY
static final boolean DEFAULT_ALLOW_OVERRUNS
static final String REMOVE_OVERLAPS_KEY
static final boolean DEFAULT_REMOVE_OVERLAPS
static final String FOLLOW_LINE_KEY
static final boolean DEFAULT_FOLLOW_LINE
static final String UNDERLINE_TEXT_KEY
static final boolean DEFAULT_UNDERLINE_TEXT
static final String STRIKETHROUGH_TEXT_KEY
static final boolean DEFAULT_STRIKETHROUGH_TEXT
static final String MAX_ANGLE_DELTA_KEY
static final double DEFAULT_MAX_ANGLE_DELTA
static final String AUTO_WRAP_KEY
static final int DEFAULT_AUTO_WRAP
static final String FORCE_LEFT_TO_RIGHT_KEY
static final boolean DEFAULT_FORCE_LEFT_TO_RIGHT
static final String CONFLICT_RESOLUTION_KEY
static final boolean DEFAULT_CONFLICT_RESOLUTION
static final String GOODNESS_OF_FIT_KEY
static final double DEFAULT_GOODNESS_OF_FIT
static final String POLYGONALIGN_KEY
static final String GRAPHIC_MARGIN_KEY
static final String GRAPHIC_RESIZE_KEY
static final TextSymbolizer.PolygonAlignOptions DEFAULT_POLYGONALIGN
static final String PARTIALS_KEY
static final boolean DEFAULT_PARTIALS
static final String KERNING_KEY
static final boolean DEFAULT_KERNING
static final String CHAR_SPACING_KEY
static final double DEFAULT_CHAR_SPACING
static final String WORD_SPACING_KEY
static final double DEFAULT_WORD_SPACING
static final String DISPLACEMENT_MODE_KEY
TextSymbolizer.DisplacementMode
Expression getLabel()
getLabel
in interface TextSymbolizer
void setLabel(Expression label)
getLabel()
for details.List<Font> fonts()
Font[] getFonts()
Font getFont()
fonts()
.getFont
in interface TextSymbolizer
void setFont(Font font)
fonts()
list.font
- void setFonts(Font[] fonts)
LabelPlacement getLabelPlacement()
getLabelPlacement
in interface TextSymbolizer
LinePlacement
or PointPlacement
.void setLabelPlacement(LabelPlacement labelPlacement)
void setPlacement(LabelPlacement labelPlacement)
LabelPlacement getPlacement()
Halo getHalo()
getHalo
in interface TextSymbolizer
void setHalo(Halo halo)
Fill getFill()
getFill
in interface TextSymbolizer
void setFill(Fill fill)
getFill()
for details.void setPriority(Expression e)
Expression getPriority()
void addToOptions(String key, String value)
String getOption(String key)
key
- Copyright © 1996–2019 Geotools. All rights reserved.