| Package | feathers.controls.text |
| Class | public class TextBlockTextRenderer |
| Inheritance | TextBlockTextRenderer BaseTextRenderer FeathersControl starling.display.Sprite |
| Implements | ITextRenderer |
| Subclasses | TextBlockTextEditor |
| Product Version : | Feathers 1.3.0 |
flash.text.engine.TextBlock from
Flash Text Engine
(sometimes abbreviated as FTE), and draws it to BitmapData
before uploading it to a texture on the GPU. Textures are managed
internally by this component, and they will be automatically disposed
when the component is disposed.
For longer passages of text, this component will stitch together multiple individual textures both horizontally and vertically, as a grid, if required. This may require quite a lot of texture memory, possibly exceeding the limits of some mobile devices, so use this component with caution when displaying a lot of text.
The following example shows how to use
TextBlockTextRenderer with a Label:
var label:Label = new Label();
label.text = "I am the very model of a modern Major General";
label.textRendererFactory = function():ITextRenderer
{
return new TextBlockTextRenderer();
};
this.addChild( label );This text renderer supports embedded TrueType or OpenType fonts.
In the following example, a TrueType font is included with
[Embed] metadata:
[Embed(source="path/to/font.ttf",fontFamily="MyCustomFont",fontWeight="normal",fontStyle="normal",mimeType="application/x-font",embedAsCFF="true")] private static const MY_CUSTOM_FONT:Class;
The source field should point to the font file, relative
to the current .as file that contains the metadata.
Set the fontFamily field to the string value that you
want to use when referencing this font in code. For example, you would
use this name when you create a starling.text.TextFormat
object. Replace "MyCustomFont" with an appropriate name for your font.
Tip: For best results, try not to set the exact same
name in the fontFamily field as the name of device font
installed on your system. Debugging embedded font issues can be
frustrating when you see the correct font on your development computer,
but it's a different font on other devices. If you use a font name that
doesn't exist on your development computer, you'll see when something is
wrong immediately, instead of discovering it later when you're testing
on other devices.
If the font is bold, set the fontWeight field to "bold".
Otherwise, set it to "normal".
If the font is italic, set the fontStyle field to
"italic". Otherwise, set it to "normal".
Since the text renderer is based on Flash Text Engine, you
must set the embedAsCFF field to
"true".
See also
| Property | Defined By | ||
|---|---|---|---|
![]() | addedEffect : Function
An optional effect that is activated when the component is added to
the stage. | FeathersControl | |
| applyNonLinearFontScaling : Boolean
Specifies that you want to enhance screen appearance at the expense
of what-you-see-is-what-you-get (WYSIWYG) print fidelity. | TextBlockTextRenderer | ||
| baseline : Number [read-only]
Returns the text baseline measurement, in pixels. | TextBlockTextRenderer | ||
| baselineFontDescription : FontDescription
The font used to determine the baselines for all the lines created from the block, independent of their content. | TextBlockTextRenderer | ||
| baselineFontSize : Number
The font size used to calculate the baselines for the lines created
from the block. | TextBlockTextRenderer | ||
| baselineZero : String
Specifies which baseline is at y=0 for lines created from this block. | TextBlockTextRenderer | ||
| bidiLevel : int
Specifies the bidirectional paragraph embedding level of the text
block. | TextBlockTextRenderer | ||
| content : ContentElement
Sets the contents of the TextBlock to a complex value
that may contain graphics and text with multiple formats. | TextBlockTextRenderer | ||
| currentElementFormat : ElementFormat [read-only]
For debugging purposes, the current
flash.text.engine.ElementFormat used to render the text. | TextBlockTextRenderer | ||
![]() | defaultTextEditorFactory : Function [static]
A function used by all UI controls that support text editor to
create an ITextEditor instance. | FeathersControl | |
![]() | defaultTextRendererFactory : Function [static]
A function used by all UI controls that support text renderers to
create an ITextRenderer instance. | FeathersControl | |
![]() | depth : int [read-only]
The component's depth in the display list, relative to the stage. | FeathersControl | |
| disabledElementFormat : ElementFormat
Advanced font formatting used to draw the text when the component
is disabled, if disabledFontStyles and
starling.text.TextFormat cannot be used on the parent
component because the full capabilities of Flash Text Engine are
required. | TextBlockTextRenderer | ||
![]() | effectsSuspended : Boolean [read-only]
Indicates if effects have been suspended. | FeathersControl | |
| elementFormat : ElementFormat
Advanced font formatting used to draw the text, if
fontStyles and starling.text.TextFormat
cannot be used on the parent component because the full capabilities
of Flash Text Engine are required. | TextBlockTextRenderer | ||
![]() | explicitHeight : Number [read-only]
The height value explicitly set by passing a value to the
height setter or by calling the setSize()
function. | FeathersControl | |
![]() | explicitMaxHeight : Number [read-only]
The maximum height value explicitly set by passing a value to the
maxHeight setter. | FeathersControl | |
![]() | explicitMaxWidth : Number [read-only]
The maximum width value explicitly set by passing a value to the
maxWidth setter. | FeathersControl | |
![]() | explicitMinHeight : Number [read-only]
The minimum height value explicitly set by passing a value to the
minHeight setter. | FeathersControl | |
![]() | explicitMinWidth : Number [read-only]
The minimum width value explicitly set by passing a value to the
minWidth setter. | FeathersControl | |
![]() | explicitWidth : Number [read-only]
The width value explicitly set by passing a value to the
width setter or to the setSize() method. | FeathersControl | |
![]() | focusInEffect : Function
An optional effect that is activated when the component receives
focus. | FeathersControl | |
![]() | focusManager : IFocusManager
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The current focus manager for this component. | FeathersControl | |
![]() | focusOutEffect : Function
An optional effect that is activated when the component loses focus. | FeathersControl | |
![]() | focusOwner : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Used for associating focusable display objects that are not direct
children with an "owner" focusable display object, such as pop-ups. | FeathersControl | |
![]() | fontStyles : FontStylesSet
The internal font styles used to render the text that are passed down
from the parent component. | BaseTextRenderer | |
| globalStyleProvider : IStyleProvider [static]
The default IStyleProvider for all TextBlockTextRenderer
components. | TextBlockTextRenderer | ||
![]() | height : Number [override]
The height of the component, in pixels. | FeathersControl | |
![]() | hideEffect : Function
An optional effect that is activated when the component is hidden. | FeathersControl | |
![]() | includeInLayout : Boolean
Determines if the ILayout should use this object or ignore it. | FeathersControl | |
![]() | isCreated : Boolean [read-only]
Determines if the component has been initialized and validated for
the first time. | FeathersControl | |
![]() | isEnabled : Boolean
Indicates whether the control is interactive or not. | FeathersControl | |
![]() | isFocusEnabled : Boolean
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Determines if this component can receive focus. | FeathersControl | |
![]() | isInitialized : Boolean [read-only]
Determines if the component has been initialized yet. | FeathersControl | |
![]() | isQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list. | FeathersControl | |
![]() | isShowingFocus : Boolean [read-only]
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
Indicates if the showFocus() method has been called on
the object when it has focus. | FeathersControl | |
![]() | layoutData : ILayoutData
Extra parameters associated with this display object that will be
used by the layout algorithm. | FeathersControl | |
| leading : Number
The amount of vertical space, in pixels, between lines. | TextBlockTextRenderer | ||
| lineRotation : String
Rotates the text lines in the text block as a unit. | TextBlockTextRenderer | ||
![]() | maintainTouchFocus : Boolean [read-only]
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
If true, the display object should remain in focus,
even if something else is touched. | FeathersControl | |
![]() | maxHeight : Number
The maximum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
| maxTextureDimensions : int
The maximum size of individual textures that are managed by this text
renderer. | TextBlockTextRenderer | ||
![]() | maxWidth : Number
The maximum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
![]() | minHeight : Number
The minimum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
![]() | minTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's
height is smaller than this value, it will be expanded. | FeathersControl | |
![]() | minTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's
width is smaller than this value, it will be expanded. | FeathersControl | |
![]() | minWidth : Number
The minimum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
![]() | moveEffect : Function
An optional effect that is activated when the component is moved to
a new position. | FeathersControl | |
| nativeFilters : Array
Native filters to pass to the flash.text.engine.TextLine
instances before creating the texture snapshot. | TextBlockTextRenderer | ||
![]() | nextDownFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.DOWN is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | |
![]() | nextLeftFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.LEFT is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | |
![]() | nextRightFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.RIGHT is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | |
![]() | nextTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when the tab key is pressed
when a focus manager is enabled. | FeathersControl | |
![]() | nextUpFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The next object that will receive focus when
Keyboard.UP is pressed at
KeyLocation.D_PAD and a focus manager is enabled. | FeathersControl | |
| numLines : int [read-only]
The number of text lines in the text renderer. | TextBlockTextRenderer | ||
| pixelSnapping : Boolean
Determines if the text should be snapped to the nearest whole pixel
when rendered. | TextBlockTextRenderer | ||
![]() | previousTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience,
but it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
The previous object that will receive focus when the tab key is
pressed while holding shift when a focus manager is enabled. | FeathersControl | |
![]() | resizeEffect : Function
An optional effect that is activated when the component is resized
with new dimensions. | FeathersControl | |
| selectedElementFormat : ElementFormat
Advanced font formatting used to draw the text when the
stateContext is selected, if
selectedFontStyles and
starling.text.TextFormat cannot be used on the parent
component because the full capabilities of Flash Text Engine are
required. | TextBlockTextRenderer | ||
![]() | showEffect : Function
An optional effect that is activated when the component is shown. | FeathersControl | |
![]() | stateContext : IStateContext
When the text renderer observes a state context, the text renderer
may change its font styles based on the current state of that
context. | BaseTextRenderer | |
![]() | styleName : String
The concatenated styleNameList, with values separated
by spaces. | FeathersControl | |
![]() | styleNameList : TokenList [read-only]
Contains a list of all "styles" assigned to this control. | FeathersControl | |
![]() | styleProvider : IStyleProvider
When a component initializes, a style provider may be used to set
properties that affect the component's visual appearance. | FeathersControl | |
| tabStops : Vector.<TabStop>
Specifies the tab stops for the text in the text block, in the form
of a Vector of TabStop objects. | TextBlockTextRenderer | ||
![]() | text : String
The text to render. | BaseTextRenderer | |
| textAlign : String
The alignment of the text. | TextBlockTextRenderer | ||
| textJustifier : TextJustifier
Specifies the TextJustifier to use during line creation. | TextBlockTextRenderer | ||
![]() | toolTip : String
Text to display in a tool tip to when hovering over this component,
if the ToolTipManager is enabled. | FeathersControl | |
| truncateToFit : Boolean
If word wrap is disabled, and the text is longer than the width of
the label, the text may be truncated using truncationText. | TextBlockTextRenderer | ||
| truncationText : String
The text to display at the end of the label if it is truncated. | TextBlockTextRenderer | ||
| updateSnapshotOnScaleChange : Boolean
Refreshes the texture snapshot every time that the text renderer is
scaled. | TextBlockTextRenderer | ||
| userData : *
Provides a way for the application to associate arbitrary data with
the text block. | TextBlockTextRenderer | ||
![]() | width : Number [override]
The width of the component, in pixels. | FeathersControl | |
![]() | wordWrap : Boolean
Determines if the text wraps to the next line when it reaches the
width (or max width) of the component. | BaseTextRenderer | |
| Property | Defined By | ||
|---|---|---|---|
![]() | actualHeight : Number = 0
The final height value that should be used for layout. | FeathersControl | |
![]() | actualMinHeight : Number = 0
The final minimum height value that should be used for layout. | FeathersControl | |
![]() | actualMinWidth : Number = 0
The final minimum width value that should be used for layout. | FeathersControl | |
![]() | actualWidth : Number = 0
The final width value that should be used for layout. | FeathersControl | |
![]() | defaultStyleProvider : IStyleProvider [read-only]
When the FeathersControl constructor is called, the
styleProvider property is set to this value. | FeathersControl | |
| textBlock : TextBlock
The TextBlock instance used to render the text before taking a
texture snapshot. | TextBlockTextRenderer | ||
| textSnapshot : Image
An image that displays a snapshot of the native TextBlock
in the Starling display list when the editor doesn't have focus. | TextBlockTextRenderer | ||
| textSnapshots : Vector.<Image>
If multiple snapshots are needed due to texture size limits, the
snapshots appearing after the first are stored here. | TextBlockTextRenderer | ||
| Method | Defined By | ||
|---|---|---|---|
Constructor. | TextBlockTextRenderer | ||
![]() | getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle [override]
Feathers components use an optimized getBounds()
implementation that may sometimes behave differently than regular
Starling display objects. | FeathersControl | |
getElementFormatForState(state:String):ElementFormat
Gets the advanced ElementFormat font formatting passed
in using setElementFormatForState() for the specified
state. | TextBlockTextRenderer | ||
![]() | hideFocus():void
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
| FeathersControl | |
![]() | initializeNow():void
If the component has not yet initialized, initializes immediately. | FeathersControl | |
![]() | invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending. | FeathersControl | |
![]() | isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not. | FeathersControl | |
measureText(result:Point = null):Point
Measures the text's bounds (without a full validation, if
possible). | TextBlockTextRenderer | ||
![]() | move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single
function call. | FeathersControl | |
![]() | removeFromParentWithEffect(effect:Function, dispose:Boolean = false):void
Plays an effect before removing the component from its parent. | FeathersControl | |
![]() | resetStyleProvider():void
Resets the styleProvider property to its default value,
which is usually the global style provider for the component. | FeathersControl | |
![]() | resumeEffects():void
Indicates that effects should be re-activated after being suspended. | FeathersControl | |
setElementFormatForState(state:String, elementFormat:ElementFormat):void
Sets the advanced ElementFormat font formatting to be
used by the text renderer when the currentState property
of the stateContext matches the specified state value. | TextBlockTextRenderer | ||
![]() | setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single
function call. | FeathersControl | |
![]() | showFocus():void
The implementation of this method is provided for convenience, but
it cannot be used unless a subclass implements the
IFocusDisplayObject interface.
| FeathersControl | |
![]() | suspendEffects():void
Indicates that effects should not be activated temporarily. | FeathersControl | |
![]() | validate():void
Immediately validates the display object, if it is invalid. | FeathersControl | |
| Method | Defined By | ||
|---|---|---|---|
autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. | TextBlockTextRenderer | ||
![]() | clearInvalidationFlag(flag:String):void
Clears an invalidation flag. | FeathersControl | |
![]() | draw():void
Override to customize layout and to adjust properties of children. | FeathersControl | |
![]() | focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN
that may be overridden in subclasses to perform additional actions
when the component receives focus. | FeathersControl | |
![]() | focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT
that may be overridden in subclasses to perform additional actions
when the component loses focus. | FeathersControl | |
![]() | ignoreNextStyleRestriction():void
The next style that is set will not be restricted. | FeathersControl | |
![]() | initialize():void
Called the first time that the UI control is added to the stage, and
you should override this function to customize the initialization
process. | FeathersControl | |
![]() | processStyleRestriction(key:Object):Boolean
Used by setters for properties that are considered "styles" to
determine if the setter has been called directly on the component or
from a style provider. | FeathersControl | |
![]() | refreshFocusIndicator():void
Updates the focus indicator skin by showing or hiding it and
adjusting its position and dimensions. | FeathersControl | |
![]() | saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the
component. | FeathersControl | |
![]() | setInvalidationFlag(flag:String):void
Sets an invalidation flag. | FeathersControl | |
![]() | setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of
invalidating or not. | FeathersControl | |
| applyNonLinearFontScaling | property |
applyNonLinearFontScaling:BooleanSpecifies that you want to enhance screen appearance at the expense of what-you-see-is-what-you-get (WYSIWYG) print fidelity.
In the following example, this property is changed to false:
textRenderer.applyNonLinearFontScaling = false;
The default value is true.
public function get applyNonLinearFontScaling():Boolean public function set applyNonLinearFontScaling(value:Boolean):voidSee also
| baseline | property |
baseline:Number [read-only] Returns the text baseline measurement, in pixels.
public function get baseline():Number| baselineFontDescription | property |
baselineFontDescription:FontDescriptionThe font used to determine the baselines for all the lines created from the block, independent of their content.
In the following example, the baseline font description is changed:
textRenderer.baselineFontDescription = new FontDescription( "Source Sans Pro", FontWeight.BOLD );
The default value is null.
public function get baselineFontDescription():FontDescription public function set baselineFontDescription(value:FontDescription):voidSee also
| baselineFontSize | property |
baselineFontSize:NumberThe font size used to calculate the baselines for the lines created from the block.
In the following example, the baseline font size is changed:
textRenderer.baselineFontSize = 20;
The default value is 12.
public function get baselineFontSize():Number public function set baselineFontSize(value:Number):voidSee also
| baselineZero | property |
baselineZero:StringSpecifies which baseline is at y=0 for lines created from this block.
In the following example, the baseline zero is changed:
textRenderer.baselineZero = TextBaseline.ASCENT;
The default value is TextBaseline.ROMAN.
public function get baselineZero():String public function set baselineZero(value:String):voidSee also
| bidiLevel | property |
bidiLevel:intSpecifies the bidirectional paragraph embedding level of the text block.
In the following example, the bidi level is changed:
textRenderer.bidiLevel = 1;
The default value is 0.
public function get bidiLevel():int public function set bidiLevel(value:int):voidSee also
| content | property |
content:ContentElement
Sets the contents of the TextBlock to a complex value
that may contain graphics and text with multiple formats.
In the following example, the content is set to a
GroupElement that contains text with multiple
formats:
var format1:ElementFormat = new ElementFormat(new FontDescription("_sans"), 20, 0x000000);
var format2:ElementFormat = new ElementFormat(new FontDescription("_sans"), 20, 0xff0000);
var format3:ElementFormat = new ElementFormat(new FontDescription("_sans", FontWeight.NORMAL, FontPosture.ITALIC), 20, 0x000000);
var text1:TextElement = new TextElement("Different ", format1);
var text2:TextElement = new TextElement("colors", format2);
var text3:TextElement = new TextElement(" and ", format1);
var text4:TextElement = new TextElement("styles", format3);
var elements:Vector.<ContentElement> = new <ContentElement>[text1, text2, text3, text4];
var group:GroupElement = new GroupElement(elements);
var textRenderer:TextBlockTextRenderer = new TextBlockTextRenderer();
textRenderer.content = group;In the following example, the content is set to a
GroupElement that contains both text and a bitmap
graphic:
var format:ElementFormat = new ElementFormat(new FontDescription("_sans"), 20);
var text:TextElement = new TextElement("Hi there! ", format);
var bitmap:Bitmap = new EmbeddedBitmap(); //a bitmap included with [Embed]
var graphic:GraphicElement = new GraphicElement(bitmap, bitmap.width, bitmap.height, format);
var elements:Vector.<ContentElement> = new <ContentElement>[text, graphic];
var group:GroupElement = new GroupElement(elements);
var textRenderer:TextBlockTextRenderer = new TextBlockTextRenderer();
textRenderer.content = group;Note: The content property cannot be used when the
TextBlockTextRenderer receives its text from a parent
component, such as a Label or a Button.
The default value is null.
public function get content():ContentElement public function set content(value:ContentElement):voidSee also
| currentElementFormat | property |
currentElementFormat:ElementFormat [read-only]
For debugging purposes, the current
flash.text.engine.ElementFormat used to render the text.
Updated during validation, and may be null before the
first validation.
Do not modify this value. It is meant for testing and debugging
only. Use the parent's starling.text.TextFormat font
styles APIs instead.
public function get currentElementFormat():ElementFormat| disabledElementFormat | property |
disabledElementFormat:ElementFormat
Advanced font formatting used to draw the text when the component
is disabled, if disabledFontStyles and
starling.text.TextFormat cannot be used on the parent
component because the full capabilities of Flash Text Engine are
required.
In the following example, the disabled element format is changed:
textRenderer.isEnabled = false; textRenderer.disabledElementFormat = new ElementFormat( new FontDescription( "Source Sans Pro" ) );
Warning: If this property is not
null, any starling.text.TextFormat font
styles that are passed in from the parent component may be ignored.
In other words, advanced font styling with ElementFormat
will always take precedence.
Warning: This property will be ignored if the
content property is customized with Flash Text Engine
rich text objects such as GroupElement and
GraphicElement.
The default value is null.
public function get disabledElementFormat():ElementFormat public function set disabledElementFormat(value:ElementFormat):voidSee also
| elementFormat | property |
elementFormat:ElementFormat
Advanced font formatting used to draw the text, if
fontStyles and starling.text.TextFormat
cannot be used on the parent component because the full capabilities
of Flash Text Engine are required.
In the following example, the element format is changed:
textRenderer.elementFormat = new ElementFormat( new FontDescription( "Source Sans Pro" ) );
Warning: If this property is not
null, any starling.text.TextFormat font
styles that are passed in from the parent component may be ignored.
In other words, advanced font styling with ElementFormat
will always take precedence.
Warning: This property will be ignored if the
content property is customized with Flash Text Engine
rich text objects such as GroupElement and
GraphicElement.
The default value is null.
public function get elementFormat():ElementFormat public function set elementFormat(value:ElementFormat):voidSee also
| globalStyleProvider | property |
public static var globalStyleProvider:IStyleProvider
The default IStyleProvider for all TextBlockTextRenderer
components.
The default value is null.
See also
| leading | property |
leading:NumberThe amount of vertical space, in pixels, between lines.
If leading is NaN the leading from the
starling.text.TextFormat font styles may be used. If no
starling.text.TextFormat font styles have been provided
by the parent component, the leading will default to 0.
In the following example, the leading is changed to 20 pixels:
textRenderer.leading = 20;
The default value is NaN.
public function get leading():Number public function set leading(value:Number):void| lineRotation | property |
lineRotation:StringRotates the text lines in the text block as a unit.
In the following example, the line rotation is changed:
textRenderer.lineRotation = TextRotation.ROTATE_90;
The default value is TextRotation.ROTATE_0.
public function get lineRotation():String public function set lineRotation(value:String):voidSee also
| maxTextureDimensions | property |
maxTextureDimensions:intThe maximum size of individual textures that are managed by this text renderer. Must be a power of 2. A larger value will create fewer individual textures, but a smaller value may use less overall texture memory by incrementing over smaller powers of two.
In the following example, the maximum size of the textures is changed:
renderer.maxTextureDimensions = 4096;
The default value is 2048.
public function get maxTextureDimensions():int public function set maxTextureDimensions(value:int):void| nativeFilters | property |
nativeFilters:Array
Native filters to pass to the flash.text.engine.TextLine
instances before creating the texture snapshot.
In the following example, the native filters are changed:
renderer.nativeFilters = [ new GlowFilter() ];
The default value is null.
public function get nativeFilters():Array public function set nativeFilters(value:Array):voidSee also
| numLines | property |
numLines:int [read-only]
The number of text lines in the text renderer. The text renderer may
contain multiple text lines if the text contains line breaks or if
the wordWrap property is enabled.
public function get numLines():int| pixelSnapping | property |
pixelSnapping:Boolean
Determines if the text should be snapped to the nearest whole pixel
when rendered. When this is false, text may be displayed
on sub-pixels, which often results in blurred rendering due to
texture smoothing.
In the following example, the text is not snapped to pixels:
textRenderer.pixelSnapping = false;
The default value is true.
public function get pixelSnapping():Boolean public function set pixelSnapping(value:Boolean):void| selectedElementFormat | property |
selectedElementFormat:ElementFormat
Advanced font formatting used to draw the text when the
stateContext is selected, if
selectedFontStyles and
starling.text.TextFormat cannot be used on the parent
component because the full capabilities of Flash Text Engine are
required.
In the following example, the selected element format is changed:
textRenderer.selectedElementFormat = new ElementFormat( new FontDescription( "Source Sans Pro" ) );
Warning: If this property is not
null, any starling.text.TextFormat font
styles that are passed in from the parent component may be ignored.
In other words, advanced font styling with ElementFormat
will always take precedence.
Warning: This property will be ignored if the
content property is customized with Flash Text Engine
rich text objects such as GroupElement and
GraphicElement.
The default value is null.
public function get selectedElementFormat():ElementFormat public function set selectedElementFormat(value:ElementFormat):voidSee also
| tabStops | property |
tabStops:Vector.<TabStop>
Specifies the tab stops for the text in the text block, in the form
of a Vector of TabStop objects.
In the following example, the tab stops changed:
textRenderer.tabStops = new <TabStop>[ new TabStop( TabAlignment.CENTER ) ];
The default value is null.
public function get tabStops():Vector.<TabStop> public function set tabStops(value:Vector.<TabStop>):voidSee also
| textAlign | property |
textAlign:String
The alignment of the text. For justified text, see the
textJustifier property.
If textAlign is null the horizontal
alignment from the starling.text.TextFormat font styles
may be used. If no starling.text.TextFormat font styles
have been provided by the parent component, the alignment will
default to HorizontalAlign.LEFT.
In the following example, the text alignment is changed:
textRenderer.textAlign = HorizontalAlign.CENTER;
The default value is null.
public function get textAlign():String public function set textAlign(value:String):voidSee also
| textBlock | property |
protected var textBlock:TextBlockThe TextBlock instance used to render the text before taking a texture snapshot.
| textJustifier | property |
textJustifier:TextJustifier
Specifies the TextJustifier to use during line creation.
In the following example, the text justifier is changed:
textRenderer.textJustifier = new SpaceJustifier( "en", LineJustification.ALL_BUT_LAST );
public function get textJustifier():TextJustifier public function set textJustifier(value:TextJustifier):voidSee also
| textSnapshot | property |
protected var textSnapshot:Image
An image that displays a snapshot of the native TextBlock
in the Starling display list when the editor doesn't have focus.
| textSnapshots | property |
protected var textSnapshots:Vector.<Image>If multiple snapshots are needed due to texture size limits, the snapshots appearing after the first are stored here.
| truncateToFit | property |
truncateToFit:Boolean
If word wrap is disabled, and the text is longer than the width of
the label, the text may be truncated using truncationText.
This feature may be disabled to improve performance.
This feature only works when the text property is
set to a string value. If the content property is set
instead, then the content will not be truncated.
This feature does not currently support the truncation of text displayed on multiple lines.
In the following example, truncation is disabled:
textRenderer.truncateToFit = false;
The default value is true.
public function get truncateToFit():Boolean public function set truncateToFit(value:Boolean):voidSee also
| truncationText | property |
truncationText:StringThe text to display at the end of the label if it is truncated.
In the following example, the truncation text is changed:
textRenderer.truncationText = " [more]";
The default value is "...".
public function get truncationText():String public function set truncationText(value:String):voidSee also
| updateSnapshotOnScaleChange | property |
updateSnapshotOnScaleChange:BooleanRefreshes the texture snapshot every time that the text renderer is scaled. Based on the scale in global coordinates, so scaling the parent will require a new snapshot.
Warning: setting this property to true may result in reduced performance because every change of the scale requires uploading a new texture to the GPU. Use with caution. Consider setting this property to false temporarily during animations that modify the scale.
In the following example, the snapshot will be updated when the text renderer is scaled:
textRenderer.updateSnapshotOnScaleChange = true;
The default value is false.
public function get updateSnapshotOnScaleChange():Boolean public function set updateSnapshotOnScaleChange(value:Boolean):void| userData | property |
userData:*Provides a way for the application to associate arbitrary data with the text block.
In the following example, the user data is changed:
textRenderer.userData = { author: "William Shakespeare", title: "Much Ado About Nothing" }; public function get userData():* public function set userData(value:any):voidSee also
| TextBlockTextRenderer | () | Constructor |
public function TextBlockTextRenderer()Constructor.
| autoSizeIfNeeded | () | method |
protected function autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. If the
explicitWidth or explicitHeight member
variables are set, those value will be used without additional
measurement. If one is set, but not the other, the dimension with the
explicit value will not be measured, but the other non-explicit
dimension will still need measurement.
Calls saveMeasurements() to set up the
actualWidth and actualHeight member
variables used for layout.
Meant for internal use, and subclasses may override this function with a custom implementation.
ReturnsBoolean |
| getElementFormatForState | () | method |
public function getElementFormatForState(state:String):ElementFormat
Gets the advanced ElementFormat font formatting passed
in using setElementFormatForState() for the specified
state.
If an ElementFormat is not defined for a specific
state, returns null.
Parameters
state:String |
ElementFormat |
See also
| measureText | () | method |
public function measureText(result:Point = null):PointMeasures the text's bounds (without a full validation, if possible).
Parameters
result:Point (default = null) |
Point |
| setElementFormatForState | () | method |
public function setElementFormatForState(state:String, elementFormat:ElementFormat):void
Sets the advanced ElementFormat font formatting to be
used by the text renderer when the currentState property
of the stateContext matches the specified state value.
For advanced use cases where starling.text.TextFormat
cannot be used on the parent component because the full capabilities
of Flash Text Engine are required.
If an ElementFormat is not defined for a specific
state, the value of the elementFormat property will be
used instead.
If the disabledElementFormat property is not
null and the isEnabled property is
false, all other element formats will be ignored.
Parameters
state:String | |
elementFormat:ElementFormat |
See also