Mega Code Archive

 
Categories / Flash ActionScript / TextField
 

Working with Advanced Text Layout

package {   import flash.display.Sprite;   import flash.text.TextField;   import flash.events.MouseEvent;   import flash.geom.Rectangle;   public class Text extends Sprite {     private var _field:TextField;     private var _highlight:Sprite;     public function Text(  ) {       _field = new TextField(  );       _field.border = true;       _field.background = true;       _field.multiline = true;       _field.wordWrap = true;       _field.selectable = false;       _field.width = 400;       _field.height = 400;       addChild(_field);       _field.text = "Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text Text ";       _field.addEventListener(MouseEvent.CLICK, onClick);       _highlight = new Sprite(  );       addChild(_highlight);     }          private function onClick(event:MouseEvent):void {       var index:int = _field.getCharIndexAtPoint(mouseX, mouseY);       var rectangle:Rectangle = _field.getCharBoundaries(index);       _highlight.graphics.clear(  );       _highlight.graphics.lineStyle(0, 0, 0);       _highlight.graphics.beginFill(0x00FFFF, .25);       _highlight.graphics.drawRect(rectangle.x, rectangle.y, rectangle.width, rectangle.height);       _highlight.graphics.endFill(  );     }        } }