A TextStyle class manages all of the style settings for a Text object.
Text Game Objects create a TextStyle instance automatically, which is
accessed via the Text.style
property. You do not normally need to
instantiate one yourself.
Constructor
new TextStyle(text, style)
Parameters
name | type | optional | description |
---|---|---|---|
text | No | The Text object that this TextStyle is styling. | |
style | No | The style settings to set. |
Scope: static
Source: src/gameobjects/text/TextStyle.js#L43
Since: 3.0.0
Public Members
align
align: string
Description:
The text alignment.
Source: src/gameobjects/text/TextStyle.js#L202
Since: 3.0.0
backgroundColor
backgroundColor: string
Description:
The background color.
Source: src/gameobjects/text/TextStyle.js#L103
Since: 3.0.0
baselineX
baselineX: number
Description:
The amount of horizontal padding added to the width of the text when calculating the font metrics.
Source: src/gameobjects/text/TextStyle.js#L277
Since: 3.3.0
baselineY
baselineY: number
Description:
The amount of vertical padding added to the height of the text when calculating the font metrics.
Source: src/gameobjects/text/TextStyle.js#L287
Since: 3.3.0
color
color: string, CanvasGradient, CanvasPattern
Description:
The text fill color.
Source: src/gameobjects/text/TextStyle.js#L112
Since: 3.0.0
fixedHeight
fixedHeight: number
Description:
The fixed height of the text.
0
means no fixed height.
Source: src/gameobjects/text/TextStyle.js#L234
Since: 3.0.0
fixedWidth
fixedWidth: number
Description:
The fixed width of the text.
0
means no fixed with.
Source: src/gameobjects/text/TextStyle.js#L222
Since: 3.0.0
fontFamily
fontFamily: string
Description:
The font family.
Source: src/gameobjects/text/TextStyle.js#L74
Since: 3.0.0
fontSize
fontSize: string, number
Description:
The font size.
Source: src/gameobjects/text/TextStyle.js#L84
Since: 3.0.0
fontStyle
fontStyle: string
Description:
The font style.
Source: src/gameobjects/text/TextStyle.js#L94
Since: 3.0.0
maxLines
maxLines: number
Description:
The maximum number of lines to draw.
Source: src/gameobjects/text/TextStyle.js#L212
Since: 3.0.0
parent
parent: Phaser.GameObjects.Text
Description:
The Text object that this TextStyle is styling.
Source: src/gameobjects/text/TextStyle.js#L65
Since: 3.0.0
resolution
resolution: number
Description:
The resolution the text is rendered to its internal canvas at. The default is 0, which means it will use the resolution set in the Game Config.
Source: src/gameobjects/text/TextStyle.js#L246
Since: 3.12.0
rtl
rtl: boolean
Description:
Whether the text should render right to left.
Source: src/gameobjects/text/TextStyle.js#L257
Since: 3.0.0
shadowBlur
shadowBlur: number
Description:
The shadow blur radius.
Source: src/gameobjects/text/TextStyle.js#L172
Since: 3.0.0
shadowColor
shadowColor: string
Description:
The shadow color.
Source: src/gameobjects/text/TextStyle.js#L162
Since: 3.0.0
shadowFill
shadowFill: boolean
Description:
Whether shadow fill is enabled or not.
Source: src/gameobjects/text/TextStyle.js#L192
Since: 3.0.0
shadowOffsetX
shadowOffsetX: number
Description:
The horizontal shadow offset.
Source: src/gameobjects/text/TextStyle.js#L142
Since: 3.0.0
shadowOffsetY
shadowOffsetY: number
Description:
The vertical shadow offset.
Source: src/gameobjects/text/TextStyle.js#L152
Since: 3.0.0
shadowStroke
shadowStroke: boolean
Description:
Whether shadow stroke is enabled or not.
Source: src/gameobjects/text/TextStyle.js#L182
Since: 3.0.0
stroke
stroke: string, CanvasGradient, CanvasPattern
Description:
The text stroke color.
Source: src/gameobjects/text/TextStyle.js#L122
Since: 3.0.0
strokeThickness
strokeThickness: number
Description:
The text stroke thickness.
Source: src/gameobjects/text/TextStyle.js#L132
Since: 3.0.0
testString
testString: string
Description:
The test string to use when measuring the font.
Source: src/gameobjects/text/TextStyle.js#L267
Since: 3.0.0
wordWrapCallback
wordWrapCallback: TextStyleWordWrapCallback, null
Description:
A custom function that will be responsible for wrapping the text. It will receive two arguments: text (the string to wrap), textObject (this Text instance). It should return the wrapped lines either as an array of lines or as a string with newline characters in place to indicate where breaks should happen. Setting this directly will not re-run the word wrapping algorithm. To change the callback and re-wrap, use Phaser.GameObjects.TextStyle#setWordWrapCallback.
Source: src/gameobjects/text/TextStyle.js#L309
Since: 3.24.0
wordWrapCallbackScope
wordWrapCallbackScope: object, null
Description:
The scope that will be applied when the wordWrapCallback is invoked. Setting this directly will not re-run the word wrapping algorithm. To change the callback and re-wrap, use Phaser.GameObjects.TextStyle#setWordWrapCallback.
Source: src/gameobjects/text/TextStyle.js#L324
Since: 3.24.0
wordWrapUseAdvanced
wordWrapUseAdvanced: boolean
Description:
Whether or not to use the advanced wrapping algorithm. If true, spaces are collapsed and whitespace is trimmed from lines. If false, spaces and whitespace are left as is. Setting this property directly will not re-run the word wrapping algorithm. To change the advanced setting and re-wrap, use Phaser.GameObjects.TextStyle#setWordWrapWidth.
Source: src/gameobjects/text/TextStyle.js#L336
Since: 3.24.0
wordWrapWidth
wordWrapWidth: number, null
Description:
The maximum width of a line of text in pixels. Null means no line wrapping. Setting this property directly will not re-run the word wrapping algorithm. To change the width and re-wrap, use Phaser.GameObjects.TextStyle#setWordWrapWidth.
Source: src/gameobjects/text/TextStyle.js#L297
Since: 3.24.0
Private Members
_font
_font: string
Description:
The font style, size and family.
Access: private
Source: src/gameobjects/text/TextStyle.js#L349
Since: 3.0.0
Public Methods
destroy
<instance> destroy()
Description:
Destroy this Text Style.
Source: src/gameobjects/text/TextStyle.js#L1083
Since: 3.0.0
getTextMetrics
<instance> getTextMetrics()
Description:
Get the current text metrics.
Returns: Phaser.Types.GameObjects.Text.TextMetrics - The text metrics.
Source: src/gameobjects/text/TextStyle.js#L1042
Since: 3.0.0
setAlign
<instance> setAlign([align])
Description:
Set the alignment of the text in this Text object.
The argument can be one of: left
, right
, center
or justify
.
Alignment only works if the Text object has more than one line of text.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
align | string | Yes | "'left'" | The text alignment for multi-line text. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L1000
Since: 3.0.0
setBackgroundColor
<instance> setBackgroundColor(color)
Description:
Set the background color.
Parameters:
name | type | optional | description |
---|---|---|---|
color | string | No | The background color. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L712
Since: 3.0.0
setColor
<instance> setColor(color)
Description:
Set the text fill color.
Parameters:
name | type | optional | description |
---|---|---|---|
color | string | CanvasGradient | CanvasPattern | No |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L746
Since: 3.0.0
setFill
<instance> setFill(color)
Description:
Set the text fill color.
Parameters:
name | type | optional | description |
---|---|---|---|
color | string | CanvasGradient | CanvasPattern | No |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L729
Since: 3.0.0
setFixedSize
<instance> setFixedSize(width, height)
Description:
Set a fixed width and height for the text.
Pass in 0
for either of these parameters to disable fixed width or height respectively.
Parameters:
name | type | optional | description |
---|---|---|---|
width | number | No | The fixed width to set. |
height | number | No | The fixed height to set. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L681
Since: 3.0.0
setFont
<instance> setFont(font, [updateText])
Description:
Set the font.
If a string is given, the font family is set.
If an object is given, the fontFamily
, fontSize
and fontStyle
properties of that object are set.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
font | string | object | No | The font family or font settings to set. | |
updateText | boolean | Yes | true | Whether to update the text immediately. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L537
Since: 3.0.0
setFontFamily
<instance> setFontFamily(family)
Description:
Set the font family.
Parameters:
name | type | optional | description |
---|---|---|---|
family | string | No | The font family. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L593
Since: 3.0.0
setFontSize
<instance> setFontSize(size)
Description:
Set the font size. Can be a string with a valid CSS unit, i.e. 16px
, or a number.
Parameters:
name | type | optional | description |
---|---|---|---|
size | number | string | No | The font size. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L637
Since: 3.0.0
setFontStyle
<instance> setFontStyle(style)
Description:
Set the font style.
Parameters:
name | type | optional | description |
---|---|---|---|
style | string | No | The font style. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L615
Since: 3.0.0
setMaxLines
<instance> setMaxLines([max])
Description:
Set the maximum number of lines to draw.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
max | number | Yes | 0 | The maximum number of lines to draw. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L1023
Since: 3.0.0
setResolution
<instance> setResolution(value)
Description:
Set the resolution used by the Text object.
It allows for much clearer text on High DPI devices, at the cost of memory because it uses larger internal Canvas textures for the Text.
Please use with caution, as the more high res Text you have, the more memory it uses up.
Parameters:
name | type | optional | description |
---|---|---|---|
value | number | No | The resolution for this Text object to use. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L763
Since: 3.12.0
setShadow
<instance> setShadow([x], [y], [color], [blur], [shadowStroke], [shadowFill])
Description:
Set the shadow settings.
Calling this method always re-measures the parent Text object, so only call it when you actually change the shadow settings.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
x | number | Yes | 0 | The horizontal shadow offset. |
y | number | Yes | 0 | The vertical shadow offset. |
color | string | Yes | "'#000'" | The shadow color. |
blur | number | Yes | 0 | The shadow blur radius. |
shadowStroke | boolean | Yes | false | Whether to stroke the shadow. |
shadowFill | boolean | Yes | true | Whether to fill the shadow. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L818
Since: 3.0.0
setShadowBlur
<instance> setShadowBlur([blur])
Description:
Set the shadow blur radius.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
blur | number | Yes | 0 | The shadow blur radius. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L896
Since: 3.0.0
setShadowColor
<instance> setShadowColor([color])
Description:
Set the shadow color.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
color | string | Yes | "'#000'" | The shadow color. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L877
Since: 3.0.0
setShadowFill
<instance> setShadowFill(enabled)
Description:
Enable or disable shadow fill.
Parameters:
name | type | optional | description |
---|---|---|---|
enabled | boolean | No | Whether shadow fill is enabled or not. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L932
Since: 3.0.0
setShadowOffset
<instance> setShadowOffset([x], [y])
Description:
Set the shadow offset.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
x | number | Yes | 0 | The horizontal shadow offset. |
y | number | Yes | 0 | The vertical shadow offset. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L855
Since: 3.0.0
setShadowStroke
<instance> setShadowStroke(enabled)
Description:
Enable or disable shadow stroke.
Parameters:
name | type | optional | description |
---|---|---|---|
enabled | boolean | No | Whether shadow stroke is enabled or not. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L915
Since: 3.0.0
setStroke
<instance> setStroke(color, thickness)
Description:
Set the stroke settings.
Parameters:
name | type | optional | description |
---|---|---|---|
color | string | CanvasGradient | CanvasPattern | No |
thickness | number | No | The stroke thickness. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L785
Since: 3.0.0
setStyle
<instance> setStyle(style, [updateText], [setDefaults])
Description:
Set the text style.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
style | No | The style settings to set. | ||
updateText | boolean | Yes | true | Whether to update the text immediately. |
setDefaults | boolean | Yes | false | Use the default values if not set, or the local values. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L363
Since: 3.0.0
setTestString
<instance> setTestString(string)
Description:
Set the test string to use when measuring the font.
Parameters:
name | type | optional | description |
---|---|---|---|
string | string | No | The test string to use when measuring the font. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L664
Since: 3.0.0
setWordWrapCallback
<instance> setWordWrapCallback(callback, [scope])
Description:
Set a custom callback for wrapping lines.
Pass in null to remove wrapping by callback.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
callback | TextStyleWordWrapCallback | No | A custom function that will be responsible for wrapping the text. It will receive two arguments: text (the string to wrap), textObject (this Text instance). It should return the wrapped lines either as an array of lines or as a string with newline characters in place to indicate where breaks should happen. | |
scope | object | Yes | null | The scope that will be applied when the callback is invoked. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L974
Since: 3.0.0
setWordWrapWidth
<instance> setWordWrapWidth(width, [useAdvancedWrap])
Description:
Set the width (in pixels) to use for wrapping lines.
Pass in null to remove wrapping by width.
Parameters:
name | type | optional | default | description |
---|---|---|---|---|
width | number | null | No | The maximum width of a line in pixels. Set to null to remove wrapping. | |
useAdvancedWrap | boolean | Yes | false | Whether or not to use the advanced wrapping algorithm. If true, spaces are collapsed and whitespace is trimmed from lines. If false, spaces and whitespace are left as is. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L949
Since: 3.0.0
syncFont
<instance> syncFont(canvas, context)
Description:
Synchronize the font settings to the given Canvas Rendering Context.
Parameters:
name | type | optional | description |
---|---|---|---|
canvas | HTMLCanvasElement | No | The Canvas Element. |
context | CanvasRenderingContext2D | No | The Canvas Rendering Context. |
Source: src/gameobjects/text/TextStyle.js#L453
Since: 3.0.0
syncShadow
<instance> syncShadow(context, enabled)
Description:
Synchronize the shadow settings to the given Canvas Rendering Context.
Parameters:
name | type | optional | description |
---|---|---|---|
context | CanvasRenderingContext2D | No | The Canvas Rendering Context. |
enabled | boolean | No | Whether shadows are enabled or not. |
Source: src/gameobjects/text/TextStyle.js#L488
Since: 3.0.0
syncStyle
<instance> syncStyle(canvas, context)
Description:
Synchronize the text style settings to the given Canvas Rendering Context.
Parameters:
name | type | optional | description |
---|---|---|---|
canvas | HTMLCanvasElement | No | The Canvas Element. |
context | CanvasRenderingContext2D | No | The Canvas Rendering Context. |
Source: src/gameobjects/text/TextStyle.js#L467
Since: 3.0.0
toJSON
<instance> toJSON()
Description:
Build a JSON representation of this Text Style.
Returns: object - A JSON representation of this Text Style.
Source: src/gameobjects/text/TextStyle.js#L1061
Since: 3.0.0
update
<instance> update(recalculateMetrics)
Description:
Update the style settings for the parent Text object.
Parameters:
name | type | optional | description |
---|---|---|---|
recalculateMetrics | boolean | No | Whether to recalculate font and text metrics. |
Returns: Phaser.GameObjects.Text - The parent Text object.
Source: src/gameobjects/text/TextStyle.js#L515
Since: 3.0.0