当前位置: 代码迷 >> Web前端 >> 展示系统中的所有字体
  详细解决方案

展示系统中的所有字体

热度:137   发布时间:2012-09-01 09:33:03.0
显示系统中的所有字体
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
			   xmlns:s="library://ns.adobe.com/flex/spark"
			   xmlns:mx="library://ns.adobe.com/flex/mx"
			   creationComplete="application1_creationCompleteHandler(event)"
			   minWidth="955"
			   minHeight="600">
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Script>
		<![CDATA[
			import mx.collections.ArrayCollection;
			import mx.collections.Sort;
			import mx.collections.SortField;
			import mx.events.FlexEvent;
			[Bindable]
			private var fontArr:ArrayCollection;

			protected function application1_creationCompleteHandler(event:FlexEvent):void {
				var fonts:Array = Font.enumerateFonts(true);
				fontArr = new ArrayCollection(fonts);
				var fontSort:Sort = new Sort();
				fontSort.fields = [new SortField("fontName", true)];
				fontArr.sort = fontSort;
				fontArr.refresh();
			}
		]]>
	</fx:Script>
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
	</fx:Declarations>
	<s:DropDownList id="fontDDList"
					dataProvider="{fontArr}"
					labelField="fontName"
					width="220"/>
</s:Application>

flash.text.Font 定义了三种属性。
1、fontName
这是一个系统报告的字体名称。在某些情况下,比如日语,韩语或者阿拉伯语,Flash
Player 可能无法正常地渲染这些字体。
2、fontStyle
这是一个字体风格: Regular, Bold, Italic, or BoldItalic.
3、fontType
这个属性有两个选择。一个叫设备字体,意思是用户电脑上已经安装了的字体。另
一个叫嵌入式字体,意思是把字体嵌入到swf 文件中。

  相关解决方案