Flex应用中如何利用source属性嵌入字体的例子

接下来的例子中演示了Flex应用中如何利用[Embed] metadata的source属性嵌入字体。
下面是完整代码:
Download: main.mxml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="middle"
  5.         backgroundColor="white"
  6.         applicationComplete="init();">
  7.     <mx:Script>
  8.         <![CDATA[
  9.             import mx.utils.ObjectUtil;
  10.             [Embed(source="assets/Base 02.ttf",
  11.                     fontName="EmbeddedBase02",
  12.                     mimeType="application/x-font")]
  13.             private var EmbeddedBase02:Class;
  14.             private function init():void {
  15.                 var c:Font = new EmbeddedBase02();
  16.                 ta.text = ObjectUtil.toString(c);
  17.             }
  18.         ]]>
  19.     </mx:Script>
  20.     <mx:ApplicationControlBar dock="true">
  21.         <mx:Label id="lbl"
  22.                 text="The quick brown fox jumped over the lazy dog."
  23.                 fontFamily="EmbeddedBase02"
  24.                 fontSize="18" />
  25.     </mx:ApplicationControlBar>
  26.     <mx:TextArea id="ta"
  27.             editable="false"
  28.             width="100%"
  29.             height="100%" />
  30. </mx:Application>
如果你需要用到的字体是UNICODE的,那么可以用类似下面的代码:
  1. [Embed(source="assets/Base 02.ttf",
  2.         fontName="EmbeddedBase02",
  3.         mimeType="application/x-font",
  4.         unicodeRange="englishRange")]
  5. private var EmbeddedBase02:Class;
另外你还可以通过字体的名称来代替位置,用 systemFont参数代替 source参数来嵌入系统字体,参考代码如下:
  1. [Embed(systemFont="Tahoma",
  2.         fontName="EmbeddedTahomaItalic",
  3.         fontStyle="italic",
  4.         advancedAntiAliasing="true",
  5.         mimeType="application/x-font")]
  6. private var EmbeddedTahomaItalic:Class;

你可能感兴趣的:(职场,休闲)