Flex中如何通过调用Font.enumerateFonts函数判断系统中安装了哪些字体的例子

By Minidxer | September 2, 2008

接下来的例子演示了Flex中如何通过调用Font.enumerateFonts函数,判断系统中安装了哪些字体。enumerateFonts函数将会返回一个字体对象的数组。

让我们先来看一下Demo可以右键View 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.         creationComplete="init()">
  7.  
  8.     <mx:Script>
  9.         <![CDATA[
  10.             import flash.text.Font;
  11.  
  12.             private function init():void {
  13.                 arr = Font.enumerateFonts(true);
  14.                 arr.sortOn("fontName", Array.CASEINSENSITIVE);
  15.             }
  16.         ]]>
  17.     </mx:Script>
  18.  
  19.     <mx:Array id="arr" />
  20.     <mx:String id="str">The quick brown fox jumped over the lazy dog.</mx:String>
  21.  
  22.     <mx:ApplicationControlBar dock="true">
  23.         <mx:Label text="String:" />
  24.         <mx:TextInput id="textInput" text="{str}" />
  25.  
  26.         <mx:Spacer width="100%" />
  27.  
  28.         <mx:Label text="Number of installed fonts: {arr.length}" />
  29.     </mx:ApplicationControlBar>
  30.  
  31.     <mx:DataGrid id="dataGrid" dataProvider="{arr}">
  32.         <mx:columns>
  33.             <mx:DataGridColumn dataField="fontName"
  34.                     width="200"
  35.                     itemRenderer="mx.controls.Label" />
  36.             <mx:DataGridColumn dataField="fontStyle" />
  37.             <mx:DataGridColumn dataField="fontType" />
  38.         </mx:columns>
  39.     </mx:DataGrid>
  40.  
  41.     <mx:Label id="lbl"
  42.             text="{textInput.text}"
  43.             width="{dataGrid.width}"
  44.             height="32"
  45.             fontFamily="{dataGrid.selectedItem.fontName}"
  46.             fontSize="16" />
  47.  
  48. </mx:Application>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子

Topics: Flex | Tags: , ,

Search Posts

Archives

Sponsored Ads