zoukankan      html  css  js  c++  java
  • flash 嵌入字体方法

    1、建立FontLibrary.fla文件,在其文档类FontLibrary.as中写如下代码:

    package { 
        import flash.text.Font; 
     
        public class FontLibrary extends Sprite { 
            [Embed(systemFont="华文中宋", fontName="MyFont", unicodeRange="U+8f93,U+5165,U+6587,U+5b57", mimeType="application/x-font")] 
            static public var MyClass : Class; 
     
            public function FontLibrary() { 
                Font.registerFont(MyClass);  
            } 
        } 
    }

    如果不是嵌入系统字体,而是嵌入外部路径的字体,则按照如下写:

    package { 
        import flash.text.Font; 
     
        public class FontLibrary extends Sprite { 
            [Embed(source="pages/simhei.ttf", fontName="MyFont", unicodeRange="U+8f93,U+5165,U+6587,U+5b57", mimeType="application/x-font")] 
            static public var MyClass : Class; 
     
            public function FontLibrary() { 
                Font.registerFont(MyClass);  
            } 
        } 
    }

    执行编译生成FontLibrary.swf

    2、调用嵌入的字体文件,在主程序中写如下代码:

    package{ 
         
        import flash.display.MovieClip; 
        import flash.display.Loader; 
        import flash.events.Event; 
        import flash.net.URLRequest; 
        import flash.text.TextFormat; 
        import flash.text.TextField; 
        import flash.text.TextFieldAutoSize; 
     
        public class Main extends MovieClip{ 
             
            private var fontLoader:Loader; 
            private var txtFmt:TextFormat; 
            private var txtFld:TextField; 
             
            public function Main(){ 
                 
                fontLoader = new Loader(); 
                fontLoader.load(new URLRequest("FontLibrary.swf")); 
                fontLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,completeHandler); 
            } 
             
            private function completeHandler(e:Event):void{ 
                txtFmt=new TextFormat("MyFont",68,0x000000); 
                txtFld=new TextField(); 
                txtFld.autoSize=TextFieldAutoSize.LEFT; 
                txtFld.embedFonts=true; 
                txtFld.text="显示中文"; 
                txtFld.setTextFormat(txtFmt); 
                addChild(txtFld); 
            } 
        } 
    }

    可以去这个网页自动生成类代码 http://kevincao.com/app/font/

  • 相关阅读:
    题解【bzoj3529 [SDOI2014]数表】
    题解【bzoj2301 [HAOI2011]Problem b】
    题解【bzoj2440 [中山市选2011]完全平方数】
    题解【bzoj3240 [NOI2013]矩阵游戏】
    题解【CF277E Binary Tree on Plane】
    题解【luogu2045 方格取数游戏加强版】
    题解【bzoj4650 [NOI2016]优秀的拆分】
    NOIp2018 游记
    Android提供的layout文件存放位置
    Android控件第2类——ImageView
  • 原文地址:https://www.cnblogs.com/atong/p/2892640.html
Copyright © 2011-2022 走看看