Module: ol/style/Text

ol/style/Text


Classes

Text

Type Definitions

Options{Object}

Properties:
Name Type Description
font string | undefined

Font style as CSS font value, see: https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/font. Default is '10px sans-serif'

maxAngle number
(defaults to Math.PI/4)

When placement is set to 'line', allow a maximum angle between adjacent characters. The expected value is in radians, and the default is 45° (Math.PI / 4).

offsetX number
(defaults to 0)

Horizontal text offset in pixels. A positive will shift the text right.

offsetY number
(defaults to 0)

Vertical text offset in pixels. A positive will shift the text down.

overflow boolean
(defaults to false)

For polygon labels or when placement is set to 'line', allow text to exceed the width of the polygon at the label position or the length of the path that it follows.

placement TextPlacement
(defaults to 'point')

Text placement.

repeat number | undefined

Repeat interval. When set, the text will be repeated at this interval, which specifies the distance between two text anchors in pixels. Only available when placement is set to 'line'. Overrides 'textAlign'.

scale number | Size | undefined

Scale.

rotateWithView boolean
(defaults to false)

Whether to rotate the text with the view.

keepUpright boolean
(defaults to true)

Whether the text can be rotated 180° to prevent being rendered upside down.

rotation number
(defaults to 0)

Rotation in radians (positive rotation clockwise).

text string | Array.<string> | undefined

Text content or rich text content. For plain text provide a string, which can contain line breaks (\n). For rich text provide an array of text/font tuples. A tuple consists of the text to render and the font to use (or '' to use the text style's font). A line break has to be a separate tuple (i.e. '\n', ''). Example: ['foo', 'bold 10px sans-serif', ' bar', 'italic 10px sans-serif', ' baz', ''] will yield "foo bar baz". Note: Rich text is not supported for placement: 'line' or the immediate rendering API.

textAlign CanvasTextAlign | undefined

Text alignment. Possible values: 'left', 'right', 'center', 'end' or 'start'. Default is 'center' for placement: 'point'. For placement: 'line', the default is to let the renderer choose a placement where maxAngle is not exceeded.

justify TextJustify | undefined

Text justification within the text box. If not set, text is justified towards the textAlign anchor. Otherwise, use options 'left', 'center', or 'right' to justify the text within the text box. Note: justify is ignored for immediate rendering and also for placement: 'line'.

textBaseline CanvasTextBaseline
(defaults to 'middle')

Text base line. Possible values: 'bottom', 'top', 'middle', 'alphabetic', 'hanging', 'ideographic'.

fill Fill | null | undefined

Fill style. If none is provided, we'll use a dark fill-style (#333). Specify null for no fill.

stroke Stroke | undefined

Stroke style.

backgroundFill Fill | undefined

Fill style for the text background when placement is 'point'. Default is no fill.

backgroundStroke Stroke | undefined

Stroke style for the text background when placement is 'point'. Default is no stroke.

padding Array.<number>
(defaults to [0, 0, 0, 0])

Padding in pixels around the text for decluttering and background. The order of values in the array is [top, right, bottom, left].

declutterMode DeclutterMode | undefined

Declutter mode: declutter, obstacle, none

TextJustify{'left'} {'center'} {'right'}

TextPlacement{'point'} {'line'}

Default text placement is 'point'. Note that 'line' requires the underlying geometry to be a LineString, Polygon, MultiLineString or MultiPolygon.