パッケージflash.text
クラスpublic final class TextRenderer
継承TextRenderer Inheritance Object

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

TextRenderer クラスには、埋め込みフォントの高度なアンチエイリアス機能が用意されています。高度なアンチエイリアスに設定すると、小さいフォントを非常に高品質でレンダリングできます。高度なアンチエイリアスは、小さいフォントのテキストが多いアプリケーションで使用します。非常に大きいフォント (48 ポイント以上) に対して高度なアンチエイリアスを使用することはお勧めしません。高度なアンチエイリアスは、Flash Player 8 以降でのみ使用できます。

テキストフィールドで高度なアンチエイリアスを設定するには、TextField インスタンスの antiAliasType プロパティを設定します。

高度なアンチエイリアスには、線の太さとエッジのシャープネスの両方を連続的に変調する CSM (Continuous Stroke Modulation) 機能が用意されています。高度な機能として、setAdvancedAntiAliasingTable() メソッドを使用すると、特定の書体やフォントサイズの設定を定義できます。

例を表示

関連項目

flash.text.TextField.antiAliasType


パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  displayMode : String
[静的] 高度なアンチエイリアスの適用されたテキストの表示を制御します。
TextRenderer
  maxLevel : int
[静的] 高度なアンチエイリアス用の ADF 品質レベルです。
TextRenderer
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
パブリックメソッド
 メソッド定義元
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
  
setAdvancedAntiAliasingTable(fontName:String, fontStyle:String, colorType:String, advancedAntiAliasingTable:Array):void
[静的] フォントのカスタム CSM ルックアップテーブルを設定します。
TextRenderer
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
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 function set displayMode(value:String):void

関連項目

maxLevelプロパティ 
maxLevel:int

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0 Flash Player 9

高度なアンチエイリアス用の ADF 品質レベルです。有効な値は 3、4、7 のみです。

高度なアンチエイリアスは、ADF を使用して、字形を決定するアウトラインを表します。品質が高くなるほど、ADF 構造用により多くのキャッシュ領域が必要となります。値 3 を指定すると、必要なメモリ量は最小で、品質は最低となります。フォントが大きければ、より多くのキャッシュ領域が必要となります。フォントサイズが 64 ピクセルの場合、品質レベルは 3 から 4、または 4 から 7 (レベルが既に 7 に設定されている場合を除く) に上がります。

デフォルト値 : 4.



実装
    public static function get maxLevel():int
    public 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 オブジェクトの配列です。各オブジェクトには、次のプロパティがあります。
  • fontSize
  • insideCutOff
  • outsideCutOff

advancedAntiAliasingTable 配列には、異なるフォントサイズの CSM 設定を指定する複数の項目を含めることができます。

fontSize は、設定が適用されるサイズです (ピクセル単位)。

高度なアンチエイリアスは、ADF (Adaptively sampled Distance Fields) を使用して、字形を決定するアウトラインを表します。Flash Player では、外部カットオフ値 (outsideCutOff:この値未満だと密度が 0 に設定される) と、その内部カットオフ値 (insideCutOff:この値を超過すると密度が最大密度値 (255 など) に設定される) が使用されます。これら 2 つのカットオフ値間でマッピング関数を実行すると、外部カットオフの 0 から内部カットオフの最大密度までの直線になります。

外部カットオフ値と内部カットオフ値を調整すると、線の太さとエッジのシャープネスに影響します。これら 2 つのパラメータ間の間隔は、標準のアンチエイリアスメソッドのフィルタ半径の 2 倍に相当します。間隔が狭ければ、エッジがシャープになり、間隔が広ければ、エッジがぼやけて、フィルタの適用度が高い状態になります。間隔が 0 の場合、結果の密度イメージは 2 層のビットマップとなります。間隔が非常に広ければ、結果の密度イメージのエッジは水彩画のようになります。

通常、ユーザーは、小さなポイントサイズではシャープでコントラストのはっきりしたエッジを、アニメーションテキストや大きなポイントサイズではぼやけたエッジを好みます。

通常、外部カットオフは負の値、内部カットオフは正の値で、中間点は 0 の近辺になります。これらのパラメータを調整して、中間点を負の無限大に向かってシフトすると、線の太さが増します。中間点を正の無限大に向かってシフトすると、線の太さは減ります。外部カットオフ値が常に内部カットオフ値以下になるようにする必要があります。

関連項目

例の使用法
TextRendererExample2.as

次の例では、TextRendererExample クラスを作成して、大小のフォントサイズについて高度なアンチエイリアス設定の効果を示します。この例をテストには、前もってフォントを埋め込んでおく必要があります。Flex を使用する場合には、次の方法でフォントを埋め込みます。
  1. georgia.ttf という名前の Georgia フォントをこの AS ファイルと同じディレクトリに置きます。
  2. クラス定義のすぐ下に次の各行を追加します。
  3. [Embed(source="georgia.ttf", fontFamily="Georgia")]
  4. private var embeddedFont:String;
Flash を使用する場合には、次の方法でフォントを埋め込みます。
  1. ステージ上にテキストフィールドを配置してそれを選択します。
  2. プロパティトインスペクタでそのテキストのフィールドのフォントを Georgia に設定します。
  3. 次に、プロパティインスペクタで「埋め込み」を押して「すべて」を選択します。

メモ:

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;
        }
    }
}




 

 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flex/3_jp/langref/flash/text/TextRenderer.html