flashx.textLayout.compose

# TextFlowLine - AS3

Package | flashx.textLayout.compose
Class | public final class TextFlowLine
Inheritance | TextFlowLine Object
Implements | IVerticalJustificationLine

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The TextFlowLine class represents a single line of text in a text flow.

Use this class to access information about how a line of text has been composed: its position, height, width, and so on. When the text flow (TextFlow) is modified, the lines immediately before and at the site of the modification are marked as invalid because they need to be recomposed. Lines after the site of the modification might not be damaged immediately, but they might be regenerated once the text is composed. You can access a TextFlowLine that has been damaged, but any values you access reflect the old state of the TextFlow. When the TextFlow is recomposed, it generates new lines and you can get the new line for a given position by calling `TextFlow.flowComposer.findLineAtPosition()`.

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | absoluteStart : int [read-only] The location of the line as an absolute character position in the TextFlow object. | TextFlowLine
|  | ascent : Number [read-only] Specifies the number of pixels from the baseline to the top of the tallest characters in the line. | TextFlowLine
|  | columnIndex : int [read-only] The number of the column in which the line has been placed, with the first column being 0. | TextFlowLine
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | controller : ContainerController [read-only] The controller (ContainerController object) for the container in which the line has been placed. | TextFlowLine
|  | descent : Number [read-only] Specifies the number of pixels from the baseline to the bottom of the lowest-descending characters in the line. | TextFlowLine
|  | height : Number [read-only] The height of the line in pixels. | TextFlowLine
|  | lineOffset : Number [read-only] The line's offset in pixels from the appropriate container inset (as dictated by paragraph direction and container block progression), prior to alignment of lines in the paragraph. | TextFlowLine
|  | location : int [read-only] One of the values from TextFlowLineLocation for specifying a line's location within a paragraph. | TextFlowLine
|  | paragraph : ParagraphElement [read-only] The paragraph (ParagraphElement) in which the line resides. | TextFlowLine
|  | spaceAfter : Number [read-only] The amount of space to leave after the line. | TextFlowLine
|  | spaceBefore : Number [read-only] The amount of space to leave before the line. | TextFlowLine
|  | textHeight : Number [read-only] The height of the text line, which is equal to ascent plus descent. | TextFlowLine
|  | textLength : int [read-only] The number of characters to the next line, including trailing spaces. | TextFlowLine
|  | textLineExists : Boolean [read-only] Indicates whether the flash.text.engine.TextLine object for this TextFlowLine exists. | TextFlowLine
|  | unjustifiedTextWidth : Number [read-only] The width of the line if it was not justified. | TextFlowLine
|  | validity : String [read-only] The validity of the line. | TextFlowLine
|  | x : Number The horizontal position of the line relative to its container, expressed as the offset in pixels from the left of the container. | TextFlowLine
|  | y : Number The vertical position of the line relative to its container, expressed as the offset in pixels from the top of the container. | TextFlowLine

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | TextFlowLine(textLine:flash.text.engine:TextLine, paragraph:ParagraphElement, outerTargetWidth:Number = 0, lineOffset:Number = 0, absoluteStart:int = 0, numChars:int = 0) Constructor - creates a new TextFlowLine instance. | TextFlowLine
|  | getBounds():Rectangle Returns the bounds of the line as a rectangle. | TextFlowLine
|  | getTextLine(forceValid:Boolean = false):flash.text.engine:TextLine Returns the flash.text.engine.TextLine object for this line, which might be recreated if it does not exist due to garbage collection. | TextFlowLine
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | toLocaleString():String Returns the string representation of this object, formatted according to locale-specific conventions. | Object
|  | toString():String Returns the string representation of the specified object. | Object
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Property Detail

### absoluteStart

property

`absoluteStart:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The location of the line as an absolute character position in the TextFlow object.

Implementation
`public function get absoluteStart():int`

Related API Elements

flashx.textLayout.elements.TextFlow

### ascent

property

`ascent:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the number of pixels from the baseline to the top of the tallest characters in the line. For a TextLine that contains only a graphic element, `ascent` is set to 0.

Implementation
`public function get ascent():Number`

### columnIndex

property

`columnIndex:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The number of the column in which the line has been placed, with the first column being 0.

Implementation
`public function get columnIndex():int`

### controller

property

`controller:ContainerController` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The controller (ContainerController object) for the container in which the line has been placed.

Implementation
`public function get controller():ContainerController`

Related API Elements

flashx.textLayout.container.ContainerController

### descent

property

`descent:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Specifies the number of pixels from the baseline to the bottom of the lowest-descending characters in the line. For a TextLine that contains only a graphic element, `descent` is set to 0.

Implementation
`public function get descent():Number`

### height

property

`height:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The height of the line in pixels.

Implementation
`public function get height():Number`

### lineOffset

property

`lineOffset:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The line's offset in pixels from the appropriate container inset (as dictated by paragraph direction and container block progression), prior to alignment of lines in the paragraph.

Implementation
`public function get lineOffset():Number`

### location

property

`location:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

One of the values from TextFlowLineLocation for specifying a line's location within a paragraph.

Implementation
`public function get location():int`

Related API Elements

flashx.textLayout.elements.ParagraphElement
TextFlowLineLocation

### paragraph

property

`paragraph:ParagraphElement` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The paragraph (ParagraphElement) in which the line resides.

Implementation
`public function get paragraph():ParagraphElement`

Related API Elements

flashx.textLayout.elements.ParagraphElement

### spaceAfter

property

`spaceAfter:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The amount of space to leave after the line.

If the line is the last line of a paragraph that has a space-after, the line will have a `spaceAfter` value. If the line comes at the bottom of a column, then the `spaceAfter` is ignored. Otherwise, the line comes before another line in the column, and the following line must be positioned vertically to insure that there is at least this much space left between this last line of the paragraph and the first line of the following paragraph.

Implementation
`public function get spaceAfter():Number`

Related API Elements

TextLayoutFormat.paragraphSpaceAfter

### spaceBefore

property

`spaceBefore:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The amount of space to leave before the line.

If the line is the first line of a paragraph that has a space-before applied, the line will have a `spaceBefore` value. If the line comes at the top of a column, `spaceBefore` is ignored. Otherwise, the line follows another line in the column, and it is positioned vertically to insure that there is at least this much space left between this line and the last line of the preceding paragraph.

Implementation
`public function get spaceBefore():Number`

Related API Elements

TextLayoutFormat.paragraphSpaceBefore

### textHeight

property

`textHeight:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The height of the text line, which is equal to `ascent` plus `descent`. The value is calculated based on the difference between the baselines that bound the line, either ideographic top and bottom or ascent and descent depending on whether the baseline at y=0 is ideographic (for example, TextBaseline.IDEOGRAPHIC_TOP) or not.

Implementation
`public function get textHeight():Number`

Related API Elements

TextBaseline

### textLength

property

`textLength:int` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The number of characters to the next line, including trailing spaces.

Implementation
`public function get textLength():int`

### textLineExists

property

`textLineExists:Boolean` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Indicates whether the `flash.text.engine.TextLine` object for this TextFlowLine exists. The value is `true` if the TextLine object has not been garbage collected and `false` if it has been.

Implementation
`public function get textLineExists():Boolean`

Related API Elements

TextLine

### unjustifiedTextWidth

property

`unjustifiedTextWidth:Number` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The width of the line if it was not justified. For unjustified text, this value is the same as `textLength`. For justified text, this value is what the length would have been without justification, and `textLength` represents the actual line width. For example, when the following String is justified and assigned a width of 500, it has an actual width of 500 but an unjustified width of 268.9921875.

Implementation
`public function get unjustifiedTextWidth():Number`

### validity

property

`validity:String` [read-only]

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The validity of the line.

A line can be invalid if the text, the attributes applied to it, or the controller settings have changed since the line was created. An invalid line can still be displayed, and you can use it, but the values used will be the values at the time it was created. The line returned by `getTextLine()` also will be in an invalid state.

Implementation
`public function get validity():String`

Related API Elements

getTextLine()
TextLine.validity
FlowDamageType.GEOMETRY

### x

property

`x:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The horizontal position of the line relative to its container, expressed as the offset in pixels from the left of the container.

Note: Although this property is technically `read-write`, you should treat it as `read-only`. The setter exists only to satisfy the requirements of the IVerticalJustificationLine interface that defines both a getter and setter for this property. Use of the setter, though possible, will lead to unpredictable results.

Implementation
`public function get x():Number`
`public function set x(value:Number):void`

Related API Elements

y

### y

property

`y:Number`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

The vertical position of the line relative to its container, expressed as the offset in pixels from the top of the container.

Note: Although this property is technically `read-write`, you should treat it as `read-only`. The setter exists only to satisfy the requirements of the IVerticalJustificationLine interface that defines both a getter and setter for this property. Use of the setter, though possible, will lead to unpredictable results.

Implementation
`public function get y():Number`
`public function set y(value:Number):void`

Related API Elements

x
Constructor Detail

### TextFlowLine

()
Constructor

`public function TextFlowLine(textLine:flash.text.engine:TextLine, paragraph:ParagraphElement, outerTargetWidth:Number = 0, lineOffset:Number = 0, absoluteStart:int = 0, numChars:int = 0)`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Constructor - creates a new TextFlowLine instance.

Note: No client should call this. It's exposed for writing your own composer.

Parameters

| `textLine:flash.text.engine:TextLine` — The TextLine display object to use for this line.
| `paragraph:ParagraphElement` — The paragraph (ParagraphElement) in which to place the line.
| `outerTargetWidth:Number` (default = `0`)`` — The width the line is composed to, excluding indents.
| `lineOffset:Number` (default = `0`)`` — The line's offset in pixels from the appropriate container inset (as dictated by paragraph direction and container block progression), prior to alignment of lines in the paragraph.
| `absoluteStart:int` (default = `0`)`` — The character position in the text flow at which the line begins.
| `numChars:int` (default = `0`)`` — The number of characters in the line.

Related API Elements

flash.text.engine.TextLine
flashx.textLayout.elements.ParagraphElement
absoluteStart
Method Detail

### getBounds

()
method

`public function getBounds():Rectangle`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the bounds of the line as a rectangle.

Returns

| `Rectangle` — a rectangle that represents the boundaries of the line.

### getTextLine

()
method

`public function getTextLine(forceValid:Boolean = false):flash.text.engine:TextLine`

Language Version: | ActionScript 3.0

Runtime Versions: | Flash Player 10, AIR 1.5

Returns the `flash.text.engine.TextLine` object for this line, which might be recreated if it does not exist due to garbage collection. Set `forceValid` to `true` to cause the TextLine to be regenerated. Returns null if the TextLine cannot be recreated.

Parameters

| `forceValid:Boolean` (default = `false`)`` — if true, the TextLine is regenerated, if it exists but is invalid.

Returns

| `flash.text.engine:TextLine` — object for this line or `null` if the TextLine object cannot be recreated.

Related API Elements

TextLine

© 2015 Adobe Systems Incorporated. All rights reserved.
Mon Apr 10 2017, 12:28 PM -07:00