套件 | flash.text |
類別 | public final class TextRenderer |
繼承 | TextRenderer Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9 |
若要設定文字欄位的進階消除鋸齒功能,請設定 TextField 實體的 antiAliasType
屬性:
進階消除鋸齒提供持續性地筆畫調整 (CSM),它會持續的調整筆畫粗細和邊緣清晰度。 您可以使用 setAdvancedAntiAliasingTable()
方法做為定義指定字樣和字體大小設定的進階功能。
相關 API 元素
屬性 | 定義自 | ||
---|---|---|---|
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
displayMode : String [靜態]
會控制進階消除鋸齒文字的顯示。 | TextRenderer | ||
maxLevel : int [靜態]
進階消除鋸齒的「適合取樣距離欄位」(Adaptively Sampled Distance Fields,ADFs) 品質等級。 | TextRenderer |
方法 | 定義自 | ||
---|---|---|---|
指出物件是否有已定義的指定屬性。 | Object | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
setAdvancedAntiAliasingTable(fontName:String, fontStyle:String, colorType:String, advancedAntiAliasingTable:Array):void [靜態]
設定字體的自訂持續地筆畫調整 (CSM) 查閱資料表。 | TextRenderer | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object |
displayMode | 屬性 |
displayMode:String
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9 |
會控制進階消除鋸齒文字的顯示。 文字的視覺品質是非常主觀的,儘管 Flash Player 會嘗試對各種狀況使用最佳設定,設計者卻可能會針對其文字選擇不同的感覺或外觀。 而且,使用 displayMode
也允許設計者覆寫 Flash Player 的子像素選擇,並建立與使用者硬體無關的視覺一致性。 請使用 TextDisplayMode 類別中的值來設定這個屬性。
預設值為 "default"。
實作
public static function get displayMode():String
public static function set displayMode(value:String):void
相關 API 元素
maxLevel | 屬性 |
maxLevel:int
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9 |
進階消除鋸齒的「適合取樣距離欄位」(Adaptively Sampled Distance Fields,ADFs) 品質等級。 可接受的值僅為 3、4 或 7。
進階消除鋸齒使用 ADFs 代表決定文字的外框。 品質越高,就需要越多 ADF 結構的快取空間。 值為 3
時,需要的記憶體量最少,且提供的品質最低。 較大的字體需要較多的快取空間;字體大小為 64 像素的話,品質等級就會從 3
增加到 4
,或是從 4
增加到 7
(除非等級已經設為 7
)。
預設值為 4。
實作
public static function get maxLevel():int
public static function set maxLevel(value:int):void
setAdvancedAntiAliasingTable | () | 方法 |
public static function setAdvancedAntiAliasingTable(fontName:String, fontStyle:String, colorType:String, advancedAntiAliasingTable:Array):void
語言版本: | ActionScript 3.0 |
執行階段版本: | AIR 1.0, Flash Player 9 |
設定字體的自訂持續地筆畫調整 (CSM) 查閱資料表。 Flash Player 會嘗試偵測您字體的最佳 CSM。 如果不想使用 Flash Player 提供的 CSM,您可以使用 setAdvancedAntiAliasingTable()
方法自訂您自己的 CSM。
參數
fontName:String — 您正要對其套用設定的字體名稱。
| |
fontStyle:String — 使用來自 flash.text.FontStyle 類別之其中一個值所指出的字體樣式。
| |
colorType:String — 這個值會決定筆畫為深色或淺色。 請使用來自 flash.text.TextColorType 類別的其中一個值。
| |
advancedAntiAliasingTable:Array — 指定之字體的一個或多個 CSMSettings 物件的陣列。 每個物件都包含下列項屬性:
進階消除鋸齒會使用「適合取樣距離欄位」(Adaptively Sampled Distance Fields,ADFs) 代表決定文字的外框。 Flash Player 會使用裁除外圍值 ( 調整裁除外圍和裁除內圈值會影響筆畫寬度和邊緣清晰度。 這兩個參數之間的間距是傳統消除鋸齒方法的濾鏡半徑的兩倍;較窄的間距提供較清晰的邊緣,較寬的間距則提供具有更多濾鏡效果的柔化邊緣。 當間距為 0 時,產生的密度影像為雙色階點陣圖。 當間距很寬時,產生的密度影像會有水彩效果般的邊緣。 一般而言,字體大小較小時,使用者會比較喜歡清晰、高對比的邊緣,而對於動畫文字和較大的字體大小來說,使用者喜歡柔化的邊緣。 通常裁除外圍的值是負的,而裁除內圈的值通常是正的,它們的中間點通常接近 0。 調整這些參數的方式是,將中間點向負無限大移動會增加筆畫寬度;將中間點向正無限大移動會減少筆畫寬度。 請確定裁除外圍值一律會小於或等於裁除內圈值。 |
相關 API 元素
- 將 Georgia 字體 (名為 georgia.ttf) 與此 AS 檔案放在同一個目錄中。
- 將下列幾行直接加在類別定義下方:
[Embed(source="georgia.ttf", fontFamily="Georgia")]
private var embeddedFont:String;
- 將文字欄位放置在舞台上,並選取該文字欄位。
- 在「屬性」檢測器中,將該文字欄位的字體設定為 Georgia。
- 在「屬性」檢測器中,按下「內嵌字體...」並選取「全部」。
注意:
- 在編譯 SWF 檔時,您必須將「本機播放安全性」設定為「只存取本機檔案」。
package { import flash.display.DisplayObject; import flash.display.Sprite; import flash.events.*; import flash.text.*; public class TextRendererExample2 extends Sprite { private var gutter:int = 10; public function TextRendererExample2() { createTextField(8,AntiAliasType.NORMAL); createTextField(8,AntiAliasType.ADVANCED); createTextField(24,AntiAliasType.NORMAL); createTextField(24,AntiAliasType.ADVANCED); } private function createTextField(fontSize:Number,antiAliasType:String):TextField { var tf:TextField = new TextField(); tf.embedFonts = true; tf.autoSize = TextFieldAutoSize.LEFT; tf.antiAliasType = antiAliasType; tf.defaultTextFormat = getTextFormat(fontSize); tf.selectable = false; tf.mouseEnabled = true; tf.text = "The quick brown fox jumped over the lazy dog."; if(numChildren > 0) { var sibling:DisplayObject = getChildAt(numChildren - 1); tf.y = sibling.y + sibling.height + gutter; } addChild(tf); return tf; } private function getTextFormat(fontSize:Number):TextFormat { var format:TextFormat = new TextFormat(); format.size = fontSize; format.font = "Georgia"; return format; } } }
Tue Jun 12 2018, 03:47 PM Z