package { import flash.display.Loader; import flash.display.Sprite; import flash.events.Event; import flash.net.URLRequest; import flash.text.AntiAliasType; import flash.text.Font; import flash.text.TextField; import flash.text.TextFieldAutoSize; import flash.text.TextFormat; public class FontLoadTest extends Sprite { private var fontLibrary:Class; private var font:Font; public function FontLoadTest() { init(); } private function init():void { loadFont("fontKR.swf"); } private function loadFont(url:String):void { var loader:Loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, fontLoaded); loader.load(new URLRequest(url)); } private function fontLoaded(e:Event):void { fontLibrary = e.target.applicationDomain.getDefinition("font_kr") as Class; Font.registerFont(fontLibrary); var fontArray:Array = Font.enumerateFonts(false); font = fontArray[0]; trace(font.fontName); buildText(); } private function buildText():void { var tf:TextField = new TextField(); tf.defaultTextFormat = new TextFormat(font.fontName,40,0); tf.embedFonts = true; tf.antiAliasType = AntiAliasType.ADVANCED; tf.autoSize = TextFieldAutoSize.LEFT; tf.text = "나눔고딕 Light ℃"; addChild(tf); } } }
fontLibrary = e.target.applicationDomain.getDefinition("font_kr") as Class; 로딩된 폰트가 들어있는 SWF를 linkage이름으로 클래스화 시키고 Font.registerFont(fontLibrary); 폰트에 등록하면 사용할수 있다.
출처 : http://rinn.kr/3
'공부방 > Flex' 카테고리의 다른 글
[Flex] Flex에 IFream을 적용하여 웹 페이지 삽입하기 (0) | 2012.02.13 |
---|---|
[Flex] -static-link-runtime-shared-libraries Warning 이 발생했을때 (0) | 2012.02.13 |
[Flex ] 해상도에 따라 창 크기 자동 조절하기 (0) | 2012.02.13 |
[Flex] 프린트 미리보기에 ZoomIn 과 ZoomOut 사용하기 (0) | 2012.02.13 |
[Flex] 팝업을 띄우고 데이터 교환하기 (0) | 2012.02.13 |