Chapter 18 Example 5

by actionscriptbible
♥0 | Line 33 | Modified 2011-10-18 03:17:30 | MIT License
play

ActionScript3 source code

/**
 * Copyright actionscriptbible ( http://wonderfl.net/user/actionscriptbible )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/6Jdi
 */

package {
  import com.actionscriptbible.Example;
  import flash.geom.Rectangle;
  import flash.text.*;
  import flashx.textLayout.conversion.ConversionType;
  import flashx.textLayout.conversion.TextConverter;
  import flashx.textLayout.elements.TextFlow;
  import flashx.textLayout.factory.TextFlowTextLineFactory;

  public class ch18ex5 extends Example {
    public function ch18ex5() {
      //import TLF markup
      XML.ignoreWhitespace = false;
      var tlfxml:XML =
<TextFlow xmlns="http://ns.adobe.com/textLayout/2008">
<format name="red" id="red" fontSize="10" color="0xff0000"/>
<p fontFamily="Calibri, Verdana, _sans" fontSize="28">Mind your
<span format="red">p</span>s and <span format="red">q</span>s!</p>
</TextFlow>;
      var textFlow:TextFlow =
        TextConverter.importToFlow(tlfxml, TextConverter.TEXT_LAYOUT_FORMAT);

      //display TextFlow
      var factory:TextFlowTextLineFactory = new TextFlowTextLineFactory();
      factory.compositionBounds = new Rectangle(0, 0, 500, 500);
      factory.createTextLines(this.addChild, textFlow);
      
      //export as TextField markup
      var tfhtml:String = TextConverter.export(textFlow,
        TextConverter.TEXT_FIELD_HTML_FORMAT, ConversionType.STRING_TYPE) as String;
      trace("\n\n\n\n\n\n\n" + tfhtml);
      
      //display TextField
      var tf:TextField = new TextField();
      tf.y = 50;
      tf.autoSize = TextFieldAutoSize.LEFT;
      addChild(tf);
      tf.htmlText = tfhtml;
    }
  }
}