Package | flashx.textLayout.elements |
Class | public final class ParagraphElement |
Inheritance | ParagraphElement ParagraphFormattedElement FlowGroupElement FlowElement Object |
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Default MXML PropertymxmlChildren
See also
Method | Defined By | ||
---|---|---|---|
Constructor - represents a paragraph in a text flow. | ParagraphElement | ||
Appends a child FlowElement object. | FlowGroupElement | ||
Adds a child FlowElement object at the specified index position. | FlowGroupElement | ||
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 | ||
Given a relative text position, find the index of the first child FlowElement that contains the relative position. | FlowGroupElement | ||
Given a relative text position, find the leaf element that contains the position. | FlowGroupElement | ||
Scans ahead from the supplied position to find the location
in the text of the next atom and returns the index. | ParagraphElement | ||
Returns the index of the next word boundary in the text. | ParagraphElement | ||
Scans backward from the supplied position to find the location
in the text of the previous atom and returns the index. | ParagraphElement | ||
Returns the index of the previous word boundary in the text. | ParagraphElement | ||
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 FlowElement child at the specified index. | FlowGroupElement | ||
Searches in children for the specified FlowElement object and returns its index position. | FlowGroupElement | ||
Returns the start of this element relative to an ancestor element. | FlowElement | ||
Returns the first FlowLeafElement descendant of this group. | FlowGroupElement | ||
Returns the last FlowLeafElement descendent of this group. | FlowGroupElement | ||
Returns the paragraph that follows this one, or null if there are no more paragraphs. | ParagraphElement | ||
Returns the next FlowElement sibling in the text flow hierarchy. | FlowElement | ||
Returns the ParagraphElement object associated with this element. | FlowElement | ||
Returns the paragraph that precedes this one, or null, if this paragraph is the first one
in the TextFlow. | ParagraphElement | ||
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 | ||
[override] | FlowGroupElement | ||
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 | ||
Removes the specified child FlowElement object from the group. | FlowGroupElement | ||
Removes the child FlowElement object at the specified index position. | FlowGroupElement | ||
Replaces child elements in the group with the specified new elements. | FlowGroupElement | ||
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 object at the position specified by the childIndex parameter. | FlowGroupElement | ||
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 |
ParagraphElement | () | Constructor |
public function ParagraphElement()
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Constructor - represents a paragraph in a text flow.
findNextAtomBoundary | () | method |
public function findNextAtomBoundary(relativePosition:int):int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Scans ahead from the supplied position to find the location in the text of the next atom and returns the index. The term atom refers to both graphic elements and characters (including groups of combining characters), the indivisible entities that make up a text line.
Parameters
relativePosition:int — position in the text to start from, counting from 0
|
int — index in the text of the following atom
|
See also
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_findNextAtomBoundary extends Sprite { public function ParagraphElement_findNextAtomBoundary() { // create the TextFlow, ParagraphElement and SpanElement objects to hold paragraph var textFlow:TextFlow = new TextFlow(); var paragraph:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement(); // assign text to the span; add span to paragraph and paragraph to TextFlow span.text = "Hello brave, new world!"; paragraph.addChild(span); textFlow.addChild(paragraph); // assign a controller to the stage and update it to compose and display text textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // find the next atom boundaries from offsets 5 and 10 var atomBoundary:int = paragraph.findNextAtomBoundary(4); trace(atomBoundary); // 5 atomBoundary = paragraph.findNextAtomBoundary(10); trace(atomBoundary); // 11 } } }
findNextWordBoundary | () | method |
public function findNextWordBoundary(relativePosition:int):int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Returns the index of the next word boundary in the text.
Scans ahead from the supplied position to find the next position in the text that starts or ends a word.
Parameters
relativePosition:int — position in the text to start from, counting from 0
|
int — index in the text of the next word boundary
|
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_findNextWordBoundary extends Sprite { public function ParagraphElement_findNextWordBoundary() { // create the TextFlow, ParagraphElement and SpanElement objects to hold paragraph var textFlow:TextFlow = new TextFlow(); var paragraph:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement(); // assign text to the span; add span to paragraph and paragraph to TextFlow span.text = "Hello brave, new world!"; paragraph.addChild(span); textFlow.addChild(paragraph); // assign a controller to the stage and update it to compose and display text textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // find the next word boundary from offsets 0 and 12 var wordBoundary:int = paragraph.findNextWordBoundary(0); trace(wordBoundary); // 5 wordBoundary = paragraph.findNextWordBoundary(12); trace(wordBoundary); // 13 } } }
findPreviousAtomBoundary | () | method |
public function findPreviousAtomBoundary(relativePosition:int):int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Scans backward from the supplied position to find the location in the text of the previous atom and returns the index. The term atom refers to both graphic elements and characters (including groups of combining characters), the indivisible entities that make up a text line.
Parameters
relativePosition:int — position in the text to start from, counting from 0
|
int — index in the text of the previous cluster
|
See also
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_findPreviousAtomBoundary extends Sprite { public function ParagraphElement_findPreviousAtomBoundary() { // create the TextFlow, ParagraphElement and SpanElement objects to hold paragraph var textFlow:TextFlow = new TextFlow(); var paragraph:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement(); // assign text to the span; add span to paragraph and paragraph to TextFlow span.text = "Hello brave, new world!"; paragraph.addChild(span); textFlow.addChild(paragraph); // assign a controller to the stage and update it to compose and display text textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // find the previous atom boundaries from offsets 6 and 13 var atomBoundary:int = paragraph.findPreviousAtomBoundary(6); trace(atomBoundary); // 5 atomBoundary = paragraph.findPreviousAtomBoundary(13); trace(atomBoundary); // 12 } } }
findPreviousWordBoundary | () | method |
public function findPreviousWordBoundary(relativePosition:int):int
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Returns the index of the previous word boundary in the text.
Scans backward from the supplied position to find the previous position in the text that starts or ends a word.
Parameters
relativePosition:int — position in the text to start from, counting from 0
|
int — index in the text of the previous word boundary
|
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_findPreviousWordBoundary extends Sprite { public function ParagraphElement_findPreviousWordBoundary() { // create the TextFlow, ParagraphElement and SpanElement objects to hold paragraph var textFlow:TextFlow = new TextFlow(); var paragraph:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement(); // assign text to the span; add span to paragraph and paragraph to TextFlow span.text = "Hello brave, new world!"; paragraph.addChild(span); textFlow.addChild(paragraph); // assign a controller to the stage and update it to compose and display text textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // find the previous word boundary from offsets 0 and 12 var wordBoundary:int = paragraph.findPreviousWordBoundary(22); trace(wordBoundary); // 17 wordBoundary = paragraph.findPreviousWordBoundary(11); trace(wordBoundary); // 6 } } }
getNextParagraph | () | method |
public function getNextParagraph():ParagraphElement
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Returns the paragraph that follows this one, or null if there are no more paragraphs.
ReturnsParagraphElement — the next paragraph or null if there are no more paragraphs.
|
See also
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_getNextParagraph extends Sprite { public function ParagraphElement_getNextParagraph() { // create TextFlow object var textFlow:TextFlow = new TextFlow(); // create content for TextFlow using XML markup var simpleText:String = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<flow:TextFlow xmlns:flow=\"http://ns.adobe.com/textLayout/2008\">"+ "<flow:p>"+ "<flow:span>This is the first paragraph.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>This is the second paragraph.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>This is the third paragraph.</flow:span>"+ "</flow:p>"+ "</flow:TextFlow>"; // import the xml markup into a TextFlow object and display it on the stage textFlow = TextConverter.importToFlow(simpleText, TextConverter.TEXT_LAYOUT_FORMAT); textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // get first paragraph var p:ParagraphElement = textFlow.getChildAt(0) as ParagraphElement; // get next paragraph and display its content var nextParagraph:ParagraphElement = p.getNextParagraph(); trace("nextParagraph.text is: " + nextParagraph.getText()); } } }
getPreviousParagraph | () | method |
public function getPreviousParagraph():ParagraphElement
Language Version: | ActionScript 3.0 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Returns the paragraph that precedes this one, or null, if this paragraph is the first one in the TextFlow.
ReturnsParagraphElement |
See also
Example ( How to use this example )
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class ParagraphElement_getPreviousParagraph extends Sprite { public function ParagraphElement_getPreviousParagraph() { // create TextFlow object var textFlow:TextFlow = new TextFlow(); // create content for TextFlow using XML markup var simpleText:String = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<flow:TextFlow xmlns:flow=\"http://ns.adobe.com/textLayout/2008\">"+ "<flow:p>"+ "<flow:span>This is the first paragraph.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>This is the second paragraph.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>This is the third paragraph.</flow:span>"+ "</flow:p>"+ "</flow:TextFlow>"; // import the xml markup into a TextFlow object and display it on the stage textFlow = TextConverter.importToFlow(simpleText, TextConverter.TEXT_LAYOUT_FORMAT); textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); // get second paragraph (first = 0) var p:ParagraphElement = textFlow.getChildAt(1) as ParagraphElement; // get previous paragraph and display its content var prevParagraph:ParagraphElement = p.getPreviousParagraph(); trace("prevParagraph.text is: " + prevParagraph.getText()); } } }
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flash.text.engine.FontPosture; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.formats.TextLayoutFormat; public class ParagraphElementExample extends Sprite { // create the TextFlow object private var textFlow:TextFlow = new TextFlow(); // Create Strings of text for the paragraphs private var para1String:String = "In the first paragraph of a " private var para1String2:String = "cheap" private var para1String3:String ="Western novel, a cowboy meets a saloon girl."; private var para2String:String = "In the middle of the cheap novel a really bad guy, "+ "who is having a relationship with the saloon girl, sees the cowboy help "+ "her onto her horse as she smiles at him warmly." private var para3String:String = "In the last paragraph of the cheap novel, the cowboy kills "+ "the really bad guy in a shootout in the middle of main street and "+ "then rides into the sunset with the saloon girl on the back of his horse."; public function ParagraphElementExample() { // create a TextLayoutFormat object to use in formatting the paragraphs var textLayoutFormat:TextLayoutFormat = new TextLayoutFormat(); var paragraph1:ParagraphElement = new ParagraphElement(); // create the ParagraphElement objects var paragraph2:ParagraphElement = new ParagraphElement(); var paragraph3:ParagraphElement = new ParagraphElement(); // create the SpanElement objects to hold the content of the paragraphs var p1Span1:SpanElement = new SpanElement(); var p1Span2:SpanElement = new SpanElement(); var p1Span3:SpanElement = new SpanElement(); var p2Span:SpanElement = new SpanElement(); var p3Span:SpanElement = new SpanElement(); // assign the strings of text for the 1st paragraph to spans p1Span1.text = para1String; p1Span2.text = para1String2; p1Span2.fontStyle = FontPosture.ITALIC; // italicize 'cheap' p1Span3.text = para1String3; // add spans to first paragraph paragraph1.addChild(p1Span1); paragraph1.addChild(p1Span2); paragraph1.addChild(p1Span3); // assign the string of text for the 2nd paragraph to a span // and add the span to the second paragraph p2Span.text = para2String; paragraph2.addChild(p2Span); // assign the string of text for the 3rd paragraph to a span // and add the span to the third paragraph p3Span.text = para3String; paragraph3.addChild(p3Span); // add the paragraphs to the TextFlow textFlow.addChild(paragraph1); textFlow.addChild(paragraph2); textFlow.addChild(paragraph3); // set the text formatting properties textLayoutFormat.fontSize = 14; textLayoutFormat.textIndent = 15; textLayoutFormat.paragraphSpaceAfter = 15; textLayoutFormat.paddingTop = 4; textLayoutFormat.paddingLeft = 4; // assign the format object to the TextFlow textFlow.hostFormat = textLayoutFormat; // assign a controller to the stage and update it to compose and // display the text textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); } } }
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.container.ContainerController; public class ParagraphElementExample2 extends Sprite { // create the TextFlow object private var textFlow:TextFlow = new TextFlow(); // xml markup that defines the attributes and contents of a text flow private var simpleText:String = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" + "<flow:TextFlow xmlns:flow=\"http://ns.adobe.com/textLayout/2008\" verticalScrollPolicy=\"auto\" horizontalScrollPolicy=\"auto\" editingMode=\"readWrite\" fontSize=\"14\" textIndent=\"15\" marginBottom=\"15\" paddingTop=\"4\" paddingLeft=\"4\">"+ "<flow:p>"+ "<flow:span>In the first paragraph of a </flow:span>"+ "<flow:span fontStyle=\"italic\">cheap</flow:span>"+ "<flow:span> Western novel, a cowboy meets a saloon girl.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>In the middle of the cheap novel a really bad guy, </flow:span>"+ "<flow:span>who is having a relationship with the saloon girl, sees the cowboy help </flow:span>"+ "<flow:span>her onto her horse as she smiles at him warmly.</flow:span>"+ "</flow:p>"+ "<flow:p>"+ "<flow:span>In the last paragraph of the cheap novel, the cowboy kills the really </flow:span>"+ "<flow:span> bad guy in a shootout in the middle of main street and then rides into the sunset with </flow:span>"+ "<flow:span>the saloon girl on the back of his horse.</flow:span>" + "</flow:p>"+ "</flow:TextFlow>"; public function ParagraphElementExample2() { // import the xml markup into a TextFlow object and display it on the stage textFlow = TextConverter.importToFlow(simpleText, TextConverter.TEXT_LAYOUT_FORMAT); textFlow.flowComposer.addController(new ContainerController(this, 200, 400)); textFlow.flowComposer.updateAllControllers(); } } }
Thu May 20 2010, 02:19 AM -07:00