パッケージ | flashx.textLayout.elements |
クラス | public final class ParagraphElement |
継承 | ParagraphElement ParagraphFormattedElement FlowGroupElement FlowElement Object |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
デフォルトの MXML プロパティmxmlChildren
さらに例を参照
関連する API エレメント
パブリックプロパティ
パブリックメソッド
メソッド | 定義元 | ||
---|---|---|---|
コンストラクター - テキストフロー内の段落を表します。 | ParagraphElement | ||
子 FlowElement オブジェクトを追加します。 | FlowGroupElement | ||
指定したインデックス位置に子 FlowElement オブジェクトを追加します。 | FlowGroupElement | ||
styleProp パラメーターにより指定されたスタイルを、この FlowElement オブジェクトからクリアします。 | FlowElement | ||
この FlowElement オブジェクトのディープコピー(すべての子を含む)を作成し、指定された 2 つの文字位置間のコンテンツをコピーし、そのコピーを FlowElement オブジェクトとして返します。 | FlowElement | ||
userStyles を他の otherElement の userStyles と比較します。 | FlowElement | ||
テキストの相対位置が指定されると、相対位置を含む最初の子 FlowElement のインデックスを検出します。 | FlowGroupElement | ||
テキストの相対位置が指定されると、位置を含むリーフエレメントを検出します。 | FlowGroupElement | ||
指定された位置より先をスキャンして、テキスト内の次のアトムの位置を検出してインデックスを返します。 | ParagraphElement | ||
テキスト内の次の単語境界のインデックスを返します。 | ParagraphElement | ||
指定された位置より手前をスキャンして、テキスト内の前のアトムの位置を検出してインデックスを返します。 | ParagraphElement | ||
テキスト内の前の単語境界のインデックスを返します。 | ParagraphElement | ||
テキストフロー内のエレメントの開始位置を絶対インデックスとして返します。 | FlowElement | ||
この FlowElement オブジェクトに対して相対的な、指定された位置の文字を返します。 | FlowElement | ||
この FlowElement に対して相対的な、指定された位置の文字コードを返します。 | FlowElement | ||
指定されたインデックス位置にある子 FlowElement を返します。 | FlowGroupElement | ||
指定された FlowElement オブジェクトの子の中を検索し、そのインデックス位置を返します。 | FlowGroupElement | ||
上位エレメントに対して相対的な、このエレメントの先頭を返します。 | FlowElement | ||
このグループの最初の FlowLeafElement 下位要素を返します。 | FlowGroupElement | ||
このグループの最後の FlowLeafElement 下位要素を返します。 | FlowGroupElement | ||
この段落に続く段落を返すか、または先に段落がない場合は null を返します。 | ParagraphElement | ||
テキストフロー階層内の次の FlowElement 兄弟を返します。 | FlowElement | ||
このエレメントに関連付けられている ParagraphElement オブジェクトを返します。 | FlowElement | ||
この段落の手前にある段落を返すか、またはこれが TextFlow の最初の段落の場合は null を返します。 | ParagraphElement | ||
テキストフロー階層内の前の FlowElement 兄弟を返します。 | FlowElement | ||
styleProp パラメーターによって指定されたスタイルの値を返します。これは、スタイル名を指定するもので、任意のユーザースタイル名を含むことができます。 | FlowElement | ||
[オーバーライド] | FlowGroupElement | ||
テキストフロー階層を遡って、エレメントのルート TextFlow オブジェクトを返します。 | FlowElement | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
実装オブジェクトが作成され、MXML タグに指定されたすべてのコンポーネントプロパティが初期化された後に、MXML オブジェクトに対して呼び出されます。 | FlowElement | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
このグループから指定された子 FlowElement オブジェクトを削除します。 | FlowGroupElement | ||
指定されたインデックス位置にある子 FlowElement オブジェクトを削除します。 | FlowGroupElement | ||
グループ内の子エレメントを指定された新規エレメントに置き換えます。 | FlowGroupElement | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
styleProp パラメーターにより指定されたスタイルの値を、newValue パラメーターで指定する値に設定します。 | FlowElement | ||
この FlowElement オブジェクトのコピーを作成し、指定された 2 つの文字位置間のコンテンツをコピーします。 | FlowElement | ||
childIndex パラメーターにより指定された位置でこのオブジェクトを分割します。 | FlowGroupElement | ||
relativePosition パラメーターで指定された位置(このエレメントのテキストの相対位置)で、この FlowElement オブジェクトを分割します。 | FlowElement | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object |
コンストラクターの詳細
ParagraphElement | () | コンストラクター |
public function ParagraphElement()
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
コンストラクター - テキストフロー内の段落を表します。
メソッドの詳細
findNextAtomBoundary | () | メソッド |
public function findNextAtomBoundary(relativePosition:int):int
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
指定された位置より先をスキャンして、テキスト内の次のアトムの位置を検出してインデックスを返します。アトムとは、グラフィックエレメントと文字(結合された文字のグループを含む)の両方、テキスト行を構成する分割できないエンティティを指す用語です。
パラメーター
relativePosition:int — テキスト内の開始位置で、0 から数えられます
|
int — テキスト内の次のアトムのインデックス
|
関連する API エレメント
例 ( この例の使用方法 )
この例では、段落内において指定されたオフセットの次のアトム境界を検出します。
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 | () | メソッド |
public function findNextWordBoundary(relativePosition:int):int
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
テキスト内の次の単語境界のインデックスを返します。
指定された位置より先をスキャンして、テキスト内の次の単語開始位置または単語終了位置を検出します。
パラメーター
relativePosition:int — テキスト内の開始位置で、0 から数えられます
|
int — テキスト内の次の単語境界のインデックス
|
例 ( この例の使用方法 )
この例では、段落内において指定されたオフセットの次の単語境界を検出します。
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 | () | メソッド |
public function findPreviousAtomBoundary(relativePosition:int):int
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
指定された位置より手前をスキャンして、テキスト内の前のアトムの位置を検出してインデックスを返します。アトムとは、グラフィックエレメントと文字(結合された文字のグループを含む)の両方、テキスト行を構成する分割できないエンティティを指す用語です。
パラメーター
relativePosition:int — テキスト内の開始位置で、0 から数えられます
|
int — テキスト内の前のアトムのインデックス
|
関連する API エレメント
例 ( この例の使用方法 )
この例では、段落内において指定されたオフセットの前のアトム境界を検出します。
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 | () | メソッド |
public function findPreviousWordBoundary(relativePosition:int):int
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
テキスト内の前の単語境界のインデックスを返します。
指定された位置より手前をスキャンして、テキスト内の前の単語開始位置または単語終了位置を検出します。
パラメーター
relativePosition:int — テキスト内の開始位置で、0 から数えられます
|
int — テキスト内の前の単語境界のインデックス
|
例 ( この例の使用方法 )
この例では、段落内において指定されたオフセットの前の単語境界を検出します。
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 | () | メソッド |
public function getNextParagraph():ParagraphElement
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
この段落に続く段落を返すか、または先に段落がない場合は null を返します。
戻り値ParagraphElement — 次の段落、または先に段落がない場合は null。
|
関連する API エレメント
例 ( この例の使用方法 )
この例では、テキストの段落を xml マークアップから 3 つインポートし、getChildAtIndex(0) を使用して最初の段落にアクセスし、getNextParagraph() を使用して 2 番目の段落にアクセスします。
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 | () | メソッド |
public function getPreviousParagraph():ParagraphElement
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
この段落の手前にある段落を返すか、またはこれが TextFlow の最初の段落の場合は null を返します。
戻り値ParagraphElement |
関連する API エレメント
例 ( この例の使用方法 )
この例では、テキストの段落を xml マークアップから 3 つインポートし、getChildAtIndex(1) を使用して 2 番目の段落にアクセスし、getPreviousParagraph() を使用して最初の段落にアクセスします。
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()); } } }
例 この例の使用方法
ParagraphElementExample.as
この例では、テキストの段落を 3 つ作成して形式を設定します。
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(); } } }
ParagraphElementExample2.as
この例では、xml マークアップを TextFlow オブジェクトにインポートします。xml マークアップによって、前の例と同じ 3 つのテキストの段落とその形式を定義します。
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(); } } }
Tue Jun 12 2018, 10:34 AM Z