[AS]TextLayoutFrameworkの簡単なサンプル
TextLayoutFramework(TLF)のメモ
以下に簡単なサンプル
package { import flash.display.Sprite; import flash.events.Event; import flash.events.MouseEvent; import flash.net.*; // 使用するText Layout Framework クラスのロード //flex SDK 4 に含まれているtextLayout.swcを使用する。 import flashx.textLayout.container.*; import flashx.textLayout.compose.*; import flashx.textLayout.conversion.*; import flashx.textLayout.edit.*; import flashx.undo.*; import flashx.textLayout.elements.*; import flashx.textLayout.container.ContainerController; /** * ... * @author 393 */ public class TextTest2 extends Sprite{ private var textFlow:TextFlow; private var container1:Sprite; private var container2:Sprite; private var count:int; public function TextTest2() { var text:String="本日確定申告と同時に開業届けも提出してきました。"; text = [text, text, text, text, text, text, text, text].join("****************"); //テキストフィールドみたいなもの textFlow=TextConverter.importToFlow(text,TextConverter.PLAIN_TEXT_FORMAT); //テキスト選択とか可能になる textFlow.interactionManager = new EditManager(); //テキストを格納するコンテナーの定義(複数個を連結可能) container1 = new Sprite(); container2 = new Sprite(); addChild(container1); addChild(container2); container2.y=150; //テキストフローにコンテナを追加 textFlow.flowComposer.addController(new ContainerController(container1, 200, 100)); textFlow.flowComposer.addController(new ContainerController(container2, 200, 100)); //テキストフローの更新(コンテナのサイズとか変更したら更新する) textFlow.flowComposer.updateAllControllers(); //現在のコンテナの数を取得(出力:2) trace("textFlow.flowComposer.numControllers : " + textFlow.flowComposer.numControllers); //ステージをクリックするごとにテキストフローのコンテナサイズを変化 stage.addEventListener(MouseEvent.CLICK , clickHandler); count = 300; } private function clickHandler (e:*):void { //コンテナの数だけループ for (var i:int = 0; i < textFlow.flowComposer.numControllers; i++) { //コンテナのサイズを変更 textFlow.flowComposer.getControllerAt(i).setCompositionSize(count,100) } //テキストフローの更新 textFlow.flowComposer.updateAllControllers(); count += 100; } } }
Tweet
2 Comments
はいー
お役に立てたようでよかったですー