Package | flashx.textLayout.elements |
Class | public final class InlineGraphicElement |
Inheritance | InlineGraphicElement FlowLeafElement FlowElement Object |
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
You can embed a graphic or any DisplayObject or specify a URl for the location of the graphic.
The height
and width
properties of InlineGraphicElement control the actual size
of the graphic to display. These values also control how much space to allocate
for the graphic in the TextLine object that contains the graphic.
The height
and width
properties each can be one of:
- A number of pixels
- A percent of the measured size of the image
- The constant, "auto", which computes the size (Default value)
- The
width
andheight
properties - The
measuredWidth
andmeasuredHeight
properties, which are the width or height of the graphic at load time - The
actualWidth
andactualHeight
properties, which are the actual display and compose width and height of the graphic as computed fromwidth
orheight
andmeasuredWidth
ormeasuredHeight
The values of the actualWidth
and actualHeight
properties are always zero until the graphic
is loaded.
If source
is specified as a URI, the graphic is loaded asynchronously. If it's a DisplayObject, TextLayout uses the width
and
height
at the time the graphic is set into the InlineGraphicElement object as measuredHeight
and measuredWidth
;
its width and height are read immediately.
Notes: For graphics that are loaded asynchronously the user must listen for a
StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE event on the TextFlow and call IFlowComposer.updateAllControllers()
to have the
graphic appear. The value of measuredWidth
and measuredHeight
for graphics that are in the
process of loading is zero.
Some inline graphics are animations or videos that possibly have audio. They begin to run the first time they are composed after they finish loading. They don't stop running until the flowComposer on the TextFlow is set to null. At that time they are stopped and unloaded.
The following restrictions apply to InLineGraphicElement objects:- On export of TLFMarkup, source is converted to a string. If the graphic element is a class, the Text Layout Framework can't export it properly .
- When doing a copy/paste operation of an InlineGraphicElement, if source can't be used to create a new InLineGraphicElement, it won't be pasted. For example if source is a DisplayObject, or if the graphic is set directly, it can't be duplicated. Best results are obtained if the source is the class of an embedded graphic though that doesn't export/import.
- InLineGraphicElement objects work in the factory (TextFlowTextLineFactory) only if the source is a class or if you explicitly set the graphic to a loaded graphic. InlineGraphic objects that require delayed loads generally do not show up.
More examples
Related API Elements
actualWidth
DisplayObject
flashx.textLayout.compose.IFlowComposer.updateAllControllers()
StatusChangeEvent
TextFlow
Property | Defined By | ||
---|---|---|---|
actualHeight : Number [read-only] The actual height in effect. | InlineGraphicElement | ||
actualWidth : Number [read-only] The actual width in effect. | InlineGraphicElement | ||
alignmentBaseline : *
TextLayoutFormat:
Specifies the baseline to which the dominant baseline aligns. | FlowElement | ||
backgroundAlpha : *
TextLayoutFormat:
Alpha (transparency) value for the background (adopts default value if undefined during cascade). | FlowElement | ||
backgroundColor : *
TextLayoutFormat:
Background color of the text (adopts default value if undefined during cascade). | FlowElement | ||
baselineShift : *
TextLayoutFormat:
Amount to shift the baseline from the dominantBaseline value. | FlowElement | ||
blockProgression : *
TextLayoutFormat:
Specifies a vertical or horizontal progression of line placement. | FlowElement | ||
breakOpportunity : *
TextLayoutFormat:
Controls where lines are allowed to break when breaking wrapping text into multiple lines. | FlowElement | ||
cffHinting : *
TextLayoutFormat:
The type of CFF hinting used for this text. | FlowElement | ||
clearFloats : *
TextLayoutFormat:
Controls how text wraps around a float. | FlowElement | ||
color : *
TextLayoutFormat:
Color of the text. | FlowElement | ||
columnCount : *
TextLayoutFormat:
Number of text columns (adopts default value if undefined during cascade). | FlowElement | ||
columnGap : *
TextLayoutFormat:
Specifies the amount of gutter space, in pixels, to leave between the columns (adopts default value if undefined during cascade). | FlowElement | ||
columnWidth : *
TextLayoutFormat:
Column width in pixels (adopts default value if undefined during cascade). | FlowElement | ||
computedFormat : flashx.textLayout.formats:ITextLayoutFormat [override] [read-only]
The computed text format attributes that are in effect for this element. | FlowLeafElement | ||
constructor : Object
A reference to the class object or constructor function for a given object instance. | Object | ||
coreStyles : Object [read-only] Returns the coreStyles on this FlowElement. | FlowElement | ||
digitCase : *
TextLayoutFormat:
The type of digit case used for this text. | FlowElement | ||
digitWidth : *
TextLayoutFormat:
Type of digit width used for this text. | FlowElement | ||
direction : *
TextLayoutFormat:
Specifies the default bidirectional embedding level of the text in the text block. | FlowElement | ||
dominantBaseline : *
TextLayoutFormat:
Specifies which element baseline snaps to the alignmentBaseline to determine the vertical position of the element on the line. | FlowElement | ||
firstBaselineOffset : *
TextLayoutFormat:
Specifies the baseline position of the first line in the container. | FlowElement | ||
float : *
Controls the placement of the graphic relative to the text. | InlineGraphicElement | ||
fontFamily : *
TextLayoutFormat:
The name of the font to use, or a comma-separated list of font names. | FlowElement | ||
fontLookup : *
TextLayoutFormat:
Font lookup to use. | FlowElement | ||
fontSize : *
TextLayoutFormat:
The size of the text in pixels. | FlowElement | ||
fontStyle : *
TextLayoutFormat:
Style of text. | FlowElement | ||
fontWeight : *
TextLayoutFormat:
Weight of text. | FlowElement | ||
format : flashx.textLayout.formats:ITextLayoutFormat TextLayoutFormat properties applied directly to this element. | FlowElement | ||
graphic : DisplayObject [read-only] The embedded graphic. | InlineGraphicElement | ||
height : * The height of the image. | InlineGraphicElement | ||
id : String
Assigns an identifying name to the element, making it possible to set a style for the element
by referencing the id. | FlowElement | ||
justificationRule : *
TextLayoutFormat:
Rule used to justify text in a paragraph. | FlowElement | ||
justificationStyle : *
TextLayoutFormat:
The style used for justification of the paragraph. | FlowElement | ||
kerning : *
TextLayoutFormat:
Kerning adjusts the pixels between certain character pairs to improve readability. | FlowElement | ||
leadingModel : *
TextLayoutFormat:
Specifies the leading model, which is a combination of leading basis and leading direction. | FlowElement | ||
ligatureLevel : *
TextLayoutFormat:
Controls which of the ligatures that are defined in the font may be used in the text. | FlowElement | ||
lineBreak : *
TextLayoutFormat:
Controls word wrapping within the container (adopts default value if undefined during cascade). | FlowElement | ||
lineHeight : *
TextLayoutFormat:
Leading controls for the text. | FlowElement | ||
lineThrough : *
TextLayoutFormat:
If true, applies strikethrough, a line drawn through the middle of the text. | FlowElement | ||
linkActiveFormat : *
TextLayoutFormat:
Defines the formatting attributes used for links in normal state. | FlowElement | ||
linkHoverFormat : *
TextLayoutFormat:
Defines the formatting attributes used for links in hover state, when the mouse is within the bounds (rolling over) a link. | FlowElement | ||
linkNormalFormat : *
TextLayoutFormat:
Defines the formatting attributes used for links in normal state. | FlowElement | ||
listAutoPadding : *
TextLayoutFormat:
This specifies an auto indent for the start edge of lists when the padding value of the list on that side is auto. | FlowElement | ||
listMarkerFormat : *
TextLayoutFormat:
Defines the formatting attributes list markers. | FlowElement | ||
listStylePosition : *
TextLayoutFormat:
Legal values are ListStylePosition.INSIDE, ListStylePosition.OUTSIDE, FormatValue.INHERIT.
Default value is undefined indicating not set.
If undefined during the cascade this property will inherit its value from an ancestor. | FlowElement | ||
listStyleType : *
TextLayoutFormat:
Legal values are ListStyleType.UPPER_ALPHA, ListStyleType.LOWER_ALPHA, ListStyleType.UPPER_ROMAN, ListStyleType.LOWER_ROMAN, ListStyleType.NONE, ListStyleType.DISC, ListStyleType.CIRCLE, ListStyleType.SQUARE, ListStyleType.BOX, ListStyleType.CHECK, ListStyleType.DIAMOND, ListStyleType.HYPHEN, ListStyleType.ARABIC_INDIC, ListStyleType.BENGALI, ListStyleType.DECIMAL, ListStyleType.DECIMAL_LEADING_ZERO, ListStyleType.DEVANAGARI, ListStyleType.GUJARATI, ListStyleType.GURMUKHI, ListStyleType.KANNADA, ListStyleType.PERSIAN, ListStyleType.THAI, ListStyleType.URDU, ListStyleType.CJK_EARTHLY_BRANCH, ListStyleType.CJK_HEAVENLY_STEM, ListStyleType.HANGUL, ListStyleType.HANGUL_CONSTANT, ListStyleType.HIRAGANA, ListStyleType.HIRAGANA_IROHA, ListStyleType.KATAKANA, ListStyleType.KATAKANA_IROHA, ListStyleType.LOWER_ALPHA, ListStyleType.LOWER_GREEK, ListStyleType.LOWER_LATIN, ListStyleType.UPPER_ALPHA, ListStyleType.UPPER_GREEK, ListStyleType.UPPER_LATIN, FormatValue.INHERIT.
Default value is undefined indicating not set.
If undefined during the cascade this property will inherit its value from an ancestor. | FlowElement | ||
locale : *
TextLayoutFormat:
The locale of the text. | FlowElement | ||
measuredHeight : Number [read-only] The natural height of the graphic. | InlineGraphicElement | ||
measuredWidth : Number [read-only] The natural width of the graphic. | InlineGraphicElement | ||
paddingBottom : *
TextLayoutFormat:
Bottom inset in pixels. | FlowElement | ||
paddingLeft : *
TextLayoutFormat:
Left inset in pixels. | FlowElement | ||
paddingRight : *
TextLayoutFormat:
Right inset in pixels. | FlowElement | ||
paddingTop : *
TextLayoutFormat:
Top inset in pixels. | FlowElement | ||
paragraphEndIndent : *
TextLayoutFormat:
A Number that specifies, in pixels, the amount to indent the paragraph's end edge. | FlowElement | ||
paragraphSpaceAfter : *
TextLayoutFormat:
A Number that specifies the amount of space, in pixels, to leave after the paragraph. | FlowElement | ||
paragraphSpaceBefore : *
TextLayoutFormat:
A Number that specifies the amount of space, in pixels, to leave before the paragraph. | FlowElement | ||
paragraphStartIndent : *
TextLayoutFormat:
A Number that specifies, in pixels, the amount to indent the paragraph's start edge. | FlowElement | ||
parent : FlowGroupElement [read-only] Returns the parent of this FlowElement object. | FlowElement | ||
parentRelativeEnd : int [read-only] Returns the relative end of this FlowElement object in the parent. | FlowElement | ||
parentRelativeStart : int [read-only] Returns the relative start of this FlowElement object in the parent. | FlowElement | ||
renderingMode : *
TextLayoutFormat:
The rendering mode used for this text. | FlowElement | ||
source : Object Sets the source for the graphic. | InlineGraphicElement | ||
status : String [read-only] The current status of the image. | InlineGraphicElement | ||
styleName : *
TextLayoutFormat:
Assigns an identifying class to the element, making it possible to set a style for the element by referencing the styleName. | FlowElement | ||
styles : Object [read-only] Returns the styles on this FlowElement. | FlowElement | ||
tabStops : *
TextLayoutFormat:
Specifies the tab stops associated with the paragraph. | FlowElement | ||
text : String [read-only]
The text associated with the FlowLeafElement:
The value for SpanElement subclass will be one character less than textLength if this is the last span in a ParagraphELement.
The value for BreakElement subclass is a U+2028
The value for TabElement subclass is a tab
The value for InlineGraphicElement subclass is U+FDEF
| FlowLeafElement | ||
textAlign : *
TextLayoutFormat:
Alignment of lines in the paragraph relative to the container. | FlowElement | ||
textAlignLast : *
TextLayoutFormat:
Alignment of the last (or only) line in the paragraph relative to the container in justified text. | FlowElement | ||
textAlpha : *
TextLayoutFormat:
Alpha (transparency) value for the text. | FlowElement | ||
textDecoration : *
TextLayoutFormat:
Decoration on text. | FlowElement | ||
textIndent : *
TextLayoutFormat:
A Number that specifies, in pixels, the amount to indent the first line of the paragraph. | FlowElement | ||
textJustify : *
TextLayoutFormat:
Specifies options for justifying text. | FlowElement | ||
textLength : int [read-only]
Returns the total length of text owned by this FlowElement object and its children. | FlowElement | ||
textRotation : *
TextLayoutFormat:
Determines the number of degrees to rotate this text. | FlowElement | ||
tracking : Object [write-only]
Sets the tracking and is synonymous with the trackingRight property. | FlowElement | ||
trackingLeft : *
TextLayoutFormat:
Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the left of each character. | FlowElement | ||
trackingRight : *
TextLayoutFormat:
Number in pixels (or percent of fontSize, like 120%) indicating the amount of tracking (manual kerning) to be applied to the right of each character. | FlowElement | ||
typeName : String
Each FlowElement has a typeName. | FlowElement | ||
typographicCase : *
TextLayoutFormat:
The type of typographic case used for this text. | FlowElement | ||
userStyles : Object Allows you to read and write user styles on a FlowElement object. | FlowElement | ||
verticalAlign : *
TextLayoutFormat:
Vertical alignment or justification (adopts default value if undefined during cascade). | FlowElement | ||
whiteSpaceCollapse : *
TextLayoutFormat:
Collapses or preserves whitespace when importing text into a TextFlow. | FlowElement | ||
width : * The width of the graphic. | InlineGraphicElement | ||
wordSpacing : *
TextLayoutFormat:
Specifies the optimum, minimum, and maximum spacing (as a multiplier of the width of a normal space) between words to use during justification. | FlowElement |
Method | Defined By | ||
---|---|---|---|
Constructor - create new InlineGraphicElement object
| InlineGraphicElement | ||
Clears the style specified by the styleProp parameter from this FlowElement object. | FlowElement | ||
Makes a deep copy of this FlowElement object, including any children, copying the content between the two specified
character positions and returning the copy as a FlowElement object. | FlowElement | ||
Compare the userStyles of this with otherElement's userStyles. | FlowElement | ||
Returns the start location of the element in the text flow as an absolute index. | FlowElement | ||
Returns the character at the specified position, relative to this FlowElement object. | FlowElement | ||
Returns the character code at the specified position, relative to this FlowElement. | FlowElement | ||
Returns the FontMetrics object for the span. | FlowLeafElement | ||
Returns the start of this element relative to an ancestor element. | FlowElement | ||
Returns the next FlowLeafElement object. | FlowLeafElement | ||
Returns the next FlowElement sibling in the text flow hierarchy. | FlowElement | ||
Returns the ParagraphElement object associated with this element. | FlowElement | ||
Returns the previous FlowLeafElement object. | FlowLeafElement | ||
Returns the previous FlowElement sibling in the text flow hierarchy. | FlowElement | ||
Returns the value of the style specified by the styleProp parameter, which specifies
the style name and can include any user style name. | FlowElement | ||
Gets the specified range of text from a flow element. | FlowElement | ||
Climbs the text flow hierarchy to return the root TextFlow object for the element. | FlowElement | ||
Indicates whether an object has a specified property defined. | Object | ||
Called for MXML objects after the implementing object has been created and all component properties specified on the MXML tag have been initialized. | FlowElement | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Sets the style specified by the styleProp parameter to the value specified by the
newValue parameter. | FlowElement | ||
Makes a copy of this FlowElement object, copying the content between two specified character positions. | FlowElement | ||
Splits this FlowElement object at the position specified by the relativePosition parameter, which is
a relative position in the text for this element. | FlowElement | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
Returns the string representation of the specified object. | Object | ||
Returns the primitive value of the specified object. | Object |
actualHeight | property |
actualHeight:Number
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The actual height in effect. This is the display and compose height that's computed from the
height
and measuredHeight
properties.
The values of the actualHeight
property are computed according to the following table:
height property | actualHeight |
---|---|
auto | measuredheight |
h a Percent | h percent of measuredheight |
h a Number | h |
Notes: If the inline graphic is a DisplayObject, its width and height are read immmediately.
If measuredWidth
or measuredHeight
are zero, then any auto calculations that would cause a divide by zero sets the result to zero.
Implementation
public function get actualHeight():Number
Related API Elements
actualWidth | property |
actualWidth:Number
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The actual width in effect. This is the display and compose width that's computed from the
width
and measuredWidth
properties.
The values of the actualWidth
property are computed according to the
following table:
width property | actualWidth |
---|---|
auto | measuredWidth |
w a Percent | w percent of measuredWidth |
w a Number | w |
Notes: If the inline graphic is a DisplayObject, its width and height are read immediately.
If measuredWidth
or measuredHeight
are zero, then any auto calculations that would cause a divide by zero sets the result to zero.
Implementation
public function get actualWidth():Number
Related API Elements
float | property |
float:*
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 2.0 |
Controls the placement of the graphic relative to the text. It can be part of the line, or can be beside the line with the text wrapped around it.
Legal values are flashx.textLayout.formats.Float.NONE
, flashx.textLayout.formats.Float.LEFT
,
flashx.textLayout.formats.Float.RIGHT
, flashx.textLayout.formats.Float.START
, and flashx.textLayout.formats.Float.END
.
Default value is undefined indicating not set.
If undefined will be treated as Float.NONE
.
Implementation
public function get float():*
public function set float(value:any):void
Throws
RangeError — when set value is not within range for this property
|
Related API Elements
graphic | property |
graphic:DisplayObject
[read-only] Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The embedded graphic.
Implementation
public function get graphic():DisplayObject
height | property |
height:*
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The height of the image. May be 'auto', a number of pixels or a percent of the measured height.
Legal values are flashx.textLayout.formats.FormatValue.AUTO and flashx.textLayout.formats.FormatValue.INHERIT.
Legal values as a number are from 0 to 32000.
Legal values as a percent are numbers from 0 to 1000000.
Default value is undefined indicating not set.
If undefined or "inherit" the InlineGraphicElement will use the default value of "auto".
Implementation
public function get height():*
public function set height(value:any):void
Throws
RangeError — when set value is not within range for this property
|
Related API Elements
measuredHeight | property |
measuredWidth | property |
source | property |
source:Object
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Sets the source for the graphic. The value can be either a String that is interpreted as a URI, a Class that's interpreted as the class of an embeddded DisplayObject, a DisplayObject instance, or a URLRequest. Creates a DisplayObject and, if the InlineGraphicElement object is added into a ParagraphElement in a TextFlow object, causes it to appear inline in the text.
Implementation
public function get source():Object
public function set source(value:Object):void
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.elements.InlineGraphicElement; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.container.ContainerController; public class InlineGraphicElement_sourceExample extends Sprite { public function InlineGraphicElement_sourceExample(){ // create a container and a controller for it var container:Sprite = new Sprite(); this.stage.addChild(container); // create the TextFlow, ParagraphElement, SpanElement, and InlineGraphicElement objects var textFlow:TextFlow = new TextFlow(); var p:ParagraphElement = new ParagraphElement(); var inlineGraphicElement:InlineGraphicElement = new InlineGraphicElement(); var span:SpanElement = new SpanElement(); // add the graphic inlineGraphicElement.source = drawRect(); // add text to the spans, spans and graphic to paragraph span.text = "Too much depends upon a "; span.fontSize = 48; p.addChild(span); p.addChild(inlineGraphicElement); // add paragraph to text flow and update controller to display textFlow.addChild(p); var controller:ContainerController = new ContainerController(container, 400, 300 ); textFlow.flowComposer.addController(controller); textFlow.flowComposer.updateAllControllers(); } private function drawRect():Sprite { var redRect:Sprite = new Sprite(); redRect.graphics.beginFill(0xff0000); // red redRect.graphics.drawRect(0,0,30, 30); redRect.graphics.endFill(); return redRect; } } }
status | property |
width | property |
width:*
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
The width of the graphic. The value can be 'auto', a number of pixels or a percent of the measured width of the image.
Legal values are flashx.textLayout.formats.FormatValue.AUTO and flashx.textLayout.formats.FormatValue.INHERIT.
Legal values as a number are from 0 to 32000.
Legal values as a percent are numbers from 0 to 1000000.
Default value is undefined indicating not set.
If undefined or "inherit" the InlineGraphicElement will use the default value of "auto".
Implementation
public function get width():*
public function set width(value:any):void
Throws
RangeError — when set value is not within range for this property
|
Related API Elements
InlineGraphicElement | () | Constructor |
public function InlineGraphicElement()
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Constructor - create new InlineGraphicElement object
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.elements.InlineGraphicElement; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.container.ContainerController; public class InlineGraphicElementExample extends Sprite { public function InlineGraphicElementExample(){ // create a container and a controller for it var container:Sprite = new Sprite(); this.stage.addChild(container); var controller:ContainerController = new ContainerController(container, 400, 200 ); // create the TextFlow, ParagraphElement, SpanElement, and InlineGraphicElement objects var textFlow:TextFlow = new TextFlow(); var p:ParagraphElement = new ParagraphElement(); var span1:SpanElement = new SpanElement(); var span2:SpanElement = new SpanElement(); var inlineGraphicElement:InlineGraphicElement = new InlineGraphicElement(); // add the graphic inlineGraphicElement.source = drwCircle(); // add text to the spans, spans and graphic to paragraph span1.text = "You can draw a happy face here "; span2.text = " if you like." p.fontSize = 16; p.addChild(span1); p.addChild(inlineGraphicElement); p.addChild(span2); // add paragraph to text flow and update controller to display textFlow.addChild(p); textFlow.flowComposer.addController(controller); textFlow.flowComposer.updateAllControllers(); // draw a yellow circle for the graphic element } private function drwCircle():Sprite { var yellowCircle:Sprite = new Sprite(); yellowCircle.graphics.beginFill(0xFFFF33); // yellow yellowCircle.graphics.drawCircle(10,12,10); yellowCircle.graphics.endFill(); return yellowCircle; } } }
Thu Dec 6 2018, 01:12 PM -08:00