Load and use embedded fonts at run-time.
/**
* Prepare font bundle SWF with embedded fonts.
*/
[Embed(source='../assets/Anonymous Pro B.ttf', fontName='AnonymousProB', fontWeight='bold', fontStyle='normal', mimeType='application/x-font', advancedAntiAliasing='true')]
public static var AnonymousProB:Class;
[Embed(source='../assets/Anonymous Pro BI.ttf', fontName='AnonymousProBI', fontWeight='bold', fontStyle='italic', mimeType='application/x-font', advancedAntiAliasing='true')]
public static var AnonymousProBI:Class;
[Embed(source='../assets/Anonymous Pro I.ttf', fontName='AnonymousProI', fontWeight='normal', fontStyle='italic', mimeType='application/x-font', advancedAntiAliasing='true')]
public static var AnonymousProI:Class;
[Embed(source='../assets/Anonymous Pro.ttf', fontName='AnonymousPro', fontWeight='normal', fontStyle='normal', mimeType='application/x-font', advancedAntiAliasing='true')]
public static var AnonymousPro:Class;
/**
* Load the bundle using Loader.
*/
protected function loadFonts():void {
var urlRequest:URLRequest = new URLRequest("fonts/FontBundle.swf");
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaderComplete);
var loaderContext:LoaderContext = new LoaderContext();
loaderContext.allowLoadBytesCodeExecution = true;
loaderContext.applicationDomain = ApplicationDomain.currentDomain;
loader.load(urlRequest, loaderContext);
}
/**
* Register fonts and render the text field.
*/
protected function onLoaderComplete(event:Event):void {
var FontBundle:Class = ApplicationDomain.currentDomain.getDefinition("FontBundle") as Class;
Font.registerFont(FontBundle.AnonymousProB);
Font.registerFont(FontBundle.AnonymousProBI);
Font.registerFont(FontBundle.AnonymousProI);
Font.registerFont(FontBundle.AnonymousPro);
var AnonymousProBI:Class = FontBundle.AnonymousProBI;
var font:Font = new AnonymousProBI() as Font;
var textFormat:TextFormat = new TextFormat();
textFormat.font = font.fontName;
textFormat.size = 35;
var textField:TextField = new TextField();
textField.autoSize = TextFieldAutoSize.LEFT;
textField.defaultTextFormat = textFormat;
textField.antiAliasType = AntiAliasType.ADVANCED;
textField.embedFonts = true;
textField.multiline = true;
textField.rotation = 45;
textField.text = "The quick brown fox jumps over the lazy dog." + "\n" + new Date().toTimeString();
textField.width = 400;
textField.wordWrap = true;
textField.x = 100;
textField.y = 100;
addChild(textField);
}


