2010年11月15日 星期一

[AS3]嵌入字型 - TextField.embedFonts ( 二 )

TextField.embedFonts = true;
( 二 )enumerateFonts(enumerateDeviceFonts:Boolean = false):Array

enumerateDeviceFonts:Boolean (default = false) — 指出您是否要將清單限制為只有目前的可用嵌入字體。 如果此項設定為 true,便會傳回所有字體的清單 (包括裝置字體和嵌入字體兩者)。 如果此項設定為 false,則只會傳回嵌入字體的清單。

// 字型清單設為不列入裝置字體,而只列入嵌入字體。並指定給embeddedFonts 陣列
var embeddedFonts:Array = Font.enumerateFonts(false);
var tFormat:TextFormat = new TextFormat();
//嵌入字體只有一個(第一個),其參照就是embeddedFonts[0],取其fontName屬性就是嵌入字體的名稱,並指定給TextFormat類別的font屬性。
tFormat.font = embeddedFonts[0].fontName;






import flash.text.TextFormat;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.Font;
//
//enumerateFonts(enumerateDeviceFonts:Boolean = false):Array
//enumerateDeviceFonts:Boolean (default = false) — 指出您是否要將清單限制為只有目前的可用嵌入字體。 如果此項設定為 true,便會傳回所有字體的清單 (包括裝置字體和嵌入字體兩者)。 如果此項設定為 false,則只會傳回嵌入字體的清單。
//http://help.adobe.com/zh_TW/Flash/CS5/AS3LR/flash/text/Font.html#enumerateFonts()
var embeddedFonts:Array = Font.enumerateFonts(false);
//trace(embeddedFonts[0].fontName);
//Font.registerFont(MyFont1); 
//
var tFormat:TextFormat = new TextFormat();
//embeddedFonts[0].fontName
tFormat.font = embeddedFonts[0].fontName;
tFormat.size = 22;
tFormat.color = 0xffff00;
tFormat.letterSpacing = -1;

//
var tField:TextField = new TextField();
//
tField.embedFonts = true;
tField.background = true;
tField.backgroundColor = 0xaa33ff;
tField.x = 80;
tField.y = 80;
tField.autoSize = TextFieldAutoSize.LEFT;
tField.selectable = false;
tField.mouseEnabled = true;
//字型嵌入,旋轉後仍正常
tField.rotation = -10;
//
tField.defaultTextFormat = tFormat;
tField.text = "今天是Flash的一天,而且三明治很難吃。";
addChild(tField);



適用於 Adobe Flash Professional CS5 的 ActionScript 3.0 參考__flash.text.Font.enumerateFonts()方法

適用於 Adobe Flash Professional CS5 的 ActionScript 3.0 參考__flash.text.Font.fontName屬性

沒有留言: