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

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

FontDescription クラスは、フォントを説明するために必要なプロパティを表します。FontDescription クラスのプロパティは、デバイスフォントおよび埋めこみフォントに適用されます。

FontDescription オブジェクトは ElementFormat に適用され、その ElementFormat は TextBlock の ContentElement に適用されます。FontDescription が ElementFormat に適用されると、その locked プロパティは true に設定されます。 ロックされた FontDescription オブジェクトのプロパティを変更することはできません。代わりに、clone() メソッドを使用してオブジェクトのロックされていないコピーを作成し、そのコピーを変更して ElementFormat に割り当てることができます。

注意:FTE は Type 1 フォントやビットマップフォント (Type 3、ATC、sfnt-wrapped CID、Naked CID など) をサポートしていません。

例を表示

関連項目

flash.text.engine.ElementFormat.fontDescription
Formatting text
Working with fonts


パブリックプロパティ
 プロパティ定義元
  cffHinting : String
このテキストに使用される CFF ヒンティングのタイプです。
FontDescription
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
  fontLookup : String
フォントの検索方法を指定します。
FontDescription
  fontName : String
使用するフォント名またはフォント名のコンマ区切りリストです。
FontDescription
  fontPosture : String
フォントの傾きを指定します。
FontDescription
  fontWeight : String
フォントの太さを指定します。
FontDescription
  locked : Boolean
FontDescription がロックされているかどうかを示します。
FontDescription
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
  renderingMode : String
このテキストに使用されるレンダリングモードです。
FontDescription
パブリックメソッド
 メソッド定義元
  
FontDescription(fontName:String = "_serif", fontWeight:String = "normal", fontPosture:String = "normal", fontLookup:String = "device", renderingMode:String = "cff", cffHinting:String = "horizontalStem")
FontDescription オブジェクトを作成します。
FontDescription
  
FontDescription のロックされていないクローンコピーを構築します。
FontDescription
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
  
isFontCompatible(fontName:String, fontWeight:String, fontPosture:String):Boolean
[静的] Font.fontType が flash.text.FontType.EMBEDDED_CFF の場合に、指定された fontName、fontWeight、fontPosture で利用できる埋め込みフォントがある場合には、true を返します。
FontDescription
 Inherited
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
プロパティの詳細
cffHintingプロパティ
cffHinting:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

このテキストに使用される CFF ヒンティングのタイプです。このプロパティには、flash.text.engine.CFFHinting 定数を使用します。このプロパティは、テキストの flash.text.engine.RenderingMode プロパティが flash.text.engine.RenderingMode.CFF に設定されている場合にのみ適用されます。

使用される CFF ヒンティングのタイプによって、太い水平線がサブピクセルグリッドに合わされるか合わされないかが決定されます。

埋め込みフォントにのみ適用されます。

デフォルト値は、flash.text.engine.CFFHinting.HORIZONTAL_STEM です。

flash.text.engine.CFFHinting プロパティでは、次のストリング値を使用できます。

ストリング値説明
CFFHinting.NONE CFF ヒンティングは指定しません。文字中の水平線をサブピクセルグリッドに合わせる処理は行われません。これはアニメーションや大きなフォントサイズに適した設定です。
CFFHinting.HORIZONTAL_STEM CFF ヒンティングを指定します。太い水平線が LCD モニタ上でサブピクセルグリッドに合わされます。この設定を使用するには、RenderingMode プロパティが RenderingMode.CFF に設定されている必要があります。



実装
    public function get cffHinting():String
    public function set cffHinting(value:String):void

例外
ArgumentError flash.text.engine.CFFHinting のメンバーではないいずれかの値に設定する場合。
 
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。

関連項目

fontLookupプロパティ 
fontLookup:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

フォントの検索方法を指定します。

デフォルト値は、flash.text.engine.FontLookup.DEVICE です。

このプロパティの値を設定するには、次のストリング値を使用します。

ストリング値説明
FontLookup.DEVICE Flash Player はテキストをレンダリングするローカルシステムの指定された name でデバイスフォントを検索します。
FontLookup.EMBEDDED_CFF Flash Player はテキストをレンダリングする指定された name で埋め込みの CFF フォントを検索します。flash.text.Font.fontType.EMBEDDED_CFF タイプのフォントだけが対象となります。指定された CFF フォントが SWF ファイルに埋め込まれていない場合、Flash Player は、それぞれの文字に対するデバイスフォールバックフォントを使用しようとします。このメソッドは、最初からデバイスフォントを選択するより、効率が悪くなります。



実装
    public function get fontLookup():String
    public function set fontLookup(value:String):void

例外
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。

関連項目

fontNameプロパティ 
fontName:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

使用するフォント名またはフォント名のコンマ区切りリストです。 リスト内の使用できる先頭のフォントを使用してエレメントをレンダリングします。例えば、「Arial, Helvetica, _sans」の場合は、「Arial」が検索され、Arial が見つからないときは「Helvetica」が、それらがいずれも見つからないときは「_sans」が検索されます。

Flash は、_ゴシック(Osaka または MS UI Gothic に類似)、_明朝(細明朝、MS P 明朝に類似)、_等幅(Osaka 等幅または MS ゴシックに類似)、_sans(Helvetica または Arial に類似)、_serif(Times Roman に類似)、_typewriter(Courier に類似)という 6 種類の汎用デバイスフォント名をサポートしています。これらのフォント名は、プラットフォームに応じて特定のデバイスフォントにマップされます。

デフォルト値は「_serif」です。

Flash Player では、選択されたフォントで見つからない文字に対するフォントフォールバックが提供されています。使用されているフォントが埋め込みフォントであってもデバイスフォントであっても、文字がフォントに見つからない場合、Flash Player は、その文字を含むと思われる別のデバイスフォントを使用する文字をレンダリングしようとします。



実装
    public function get fontName():String
    public function set fontName(value:String):void

例外
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。
fontPostureプロパティ 
fontPosture:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

フォントの傾きを指定します。

デバイスフォントにのみ適用されます。

デフォルト値は、flash.text.engine.FontPosture.NORMAL です。

このプロパティの値を設定するには、次のストリング値を使用します。

ストリング値説明
FontPosture.NORMAL 標準フォントの傾斜です。
FontPosture.ITALIC イタリックフォントの傾斜です。



実装
    public function get fontPosture():String
    public function set fontPosture(value:String):void

例外
ArgumentError flash.text.engine.FontPosture のメンバーではないいずれかの値に設定する場合。
 
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。
fontWeightプロパティ 
fontWeight:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

フォントの太さを指定します。

デバイスフォントにのみ適用されます。

デフォルト値は flash.text.engine.FontWeight.NORMAL です。

このプロパティの値を設定するには、次のストリング値を使用します。

ストリング値説明
FontWeight.NORMAL 標準フォントの太さです。
FontWeight.BOLD ボールドフォントの太さです。



実装
    public function get fontWeight():String
    public function set fontWeight(value:String):void

例外
ArgumentError flash.text.engine.FontWeight のメンバーではないいずれかの値に設定する場合。
 
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。
lockedプロパティ 
locked:Boolean  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5.

FontDescription がロックされているかどうかを示します。true の場合、FontDescription を変更することはできません。FontDescription.clone() を呼び出して FontDescription オブジェクトのロックされていないコピーを取得します。



実装
    public function get locked():Boolean
    public function set locked(value:Boolean):void

例外
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。

関連項目

renderingModeプロパティ 
renderingMode:String  [読み書き可能]

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

このテキストに使用されるレンダリングモードです。このプロパティには、flash.text.engine.RenderingMode 定数を使用します。

埋め込みフォントにのみ適用されます。

デフォルト値は、flash.text.engine.RenderingMode.CFF です。

このプロパティの値を設定するには、次のストリング値を使用します。

ストリング値説明
RenderingMode.NORMAL 標準のテキストレンダリングを適用します。これは、Flash Player 7 以前のバージョンで使用されているレンダリングのタイプと一致します。
RenderingMode.CFF 文字を読みやすくする CFF レンダリングを適用します。これは Flash Player 10 で使用可能になった機能です。 CFF レンダリングでは、小さいサイズのフォントフェイスを高品質でレンダリングすることができます。



実装
    public function get renderingMode():String
    public function set renderingMode(value:String):void

例外
ArgumentError flash.text.engine.RenderingMode のメンバーではないいずれかの値に設定する場合。
 
IllegalOperationError — FontDescription オブジェクトのロック後に設定する場合(lockedtrue の場合)。

関連項目

コンストラクタの詳細
FontDescription()コンストラクタ
public function FontDescription(fontName:String = "_serif", fontWeight:String = "normal", fontPosture:String = "normal", fontLookup:String = "device", renderingMode:String = "cff", cffHinting:String = "horizontalStem")

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

FontDescription オブジェクトを作成します。

パラメータ
fontName:String (default = "_serif") — 使用するフォント名またはフォント名のコンマ区切りリストです。
 
fontWeight:String (default = "normal") — フォントの太さを指定します。
 
fontPosture:String (default = "normal") — フォントの傾きを指定します。
 
fontLookup:String (default = "device") — フォントの検索方法を指定します。
 
renderingMode:String (default = "cff") — このテキストに使用されるレンダリングモードです。このプロパティには、flash.text.engine.RenderingMode 定数を使用します。
 
cffHinting:String (default = "horizontalStem") — このテキストに使用される CFF ヒンティングのタイプです。このプロパティには、flash.text.engine.CFFHintingTextBaseline 定数を使用します。

例外
ArgumentError — 指定された fontWeight は、flash.text.engine.FontWeight のメンバーではありません。
 
ArgumentError — 指定された fontPosture は、flash.text.engine.FontPosture のメンバーではありません。
 
ArgumentError — 指定された fontLookup は、flash.text.engine.FontLookup のメンバーではありません。
 
ArgumentError — 指定された renderingMode は、flash.text.engine.RenderingMode のメンバーではありません。
 
ArgumentError — 指定された cffHinting は、flash.text.engine.CFFHinting のメンバーではありません。
メソッドの詳細
clone()メソッド
public function clone():FontDescription

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

FontDescription のロックされていないクローンコピーを構築します。

戻り値
FontDescriptionFontDescription オブジェクトのロックされていないコピーです。

関連項目




この例では FontDescription オブジェクトを作成し、それにデバイスフォントを割り当て、様々なフォントプロパティを設定し、ElementFormat オブジェクトに新しいオブジェクトを割り当てます(つまり、ロックします)。新しい TextElement が作成され、ElementFormat が指定されています。また、TextElementTextBlock のコンテンツとして使用されます。 テキストの行が、TextBlock から作成されます。

FontDescription オブジェクトを変更するには、その locked プロパティを最初にチェックします。 true である場合は、clone() メソッドを使用して FontDescription のロックされていないコピーを作成し、それを新しい ElementFormat オブジェクトに割り当てます。 次に、その新しい ElementFormatTextBlock に再リンクします。 行が再改行されると、新しい行には新しいフォント設定が使用されます。

package {

    import flash.display.Sprite;
    import flash.text.engine.*;

    
    public class FontDescription_cloneExample extends Sprite {
        private var fd:FontDescription;
        private var fd2:FontDescription;
        
        public function FontDescription_cloneExample():void {
            fd = new FontDescription();
            fd.fontLookup = flash.text.engine.FontLookup.DEVICE;
            fd.fontName = "Palatino";
            fd.fontWeight = flash.text.engine.FontWeight.BOLD;
            fd.fontPosture = flash.text.engine.FontPosture.ITALIC;

            var ef1:ElementFormat = new ElementFormat(fd);
            
            var str:String = "This is flash text 0123456789";
            var tb:TextBlock = new TextBlock();
            var te1:TextElement = new TextElement(str, ef1);
            tb.content = te1;
            var line1:TextLine = tb.createTextLine(null, 600);
            addChild(line1);
            
            fd2 = (fd.locked) ? fd.clone() : fd;    
            fd2.fontWeight = flash.text.engine.FontWeight.NORMAL;
            var ef2:ElementFormat = new ElementFormat(fd2);

            tb.content.elementFormat=ef2;
            var line2:TextLine = tb.createTextLine(null, 600);
            addChild(line2);
            
        }
    }    
}
isFontCompatible()メソッド 
public static function isFontCompatible(fontName:String, fontWeight:String, fontPosture:String):Boolean

言語バージョン: ActionScript 3.0
ランタイムバージョン: Flash Player 10, AIR 1.5

指定された fontNamefontWeightfontPosture で利用できる埋め込みフォントがあり、Font.fontTypeflash.text.FontType.EMBEDDED_CFF の場合には、ture を返します。 Flash Player 10 を使い始めた段階では、2 種類の埋め込みフォントを SWF ファイルに表示することができます。通常の埋め込みフォントは TextField でのみ使用されます。CFF の埋め込みフォントは flash.text.engine クラスでのみ使用されます。この 2 つのタイプは、fontType プロパティ(Font クラス)で区別されます。これは、enumerateFonts() 関数で返されます。

flash.text.engine クラスは EMBEDDED タイプのフォントを使用できません。 fontLookupFontLookup.EMBEDDED_CFF に設定され、指定された名前、太さ、傾きで実行時に利用可能なフォントのタイプが EMBEDDED の場合には、Flash Player はテキストの表示に文字毎のベースでデバイスフォントを使用します。これは、指定された名前やスタイルで使用できる埋め込みフォントがないのと同じです。

同じ名前、太さ、傾きで EMBEDDED および EMBEDDED_CFF フォントの両方が利用できる場合は、EMBEDDED_CFF フォントが選択され、テキストは EMBEDDED_CFF フォントで表示されます。

パラメータ

fontName:String — チェックする埋め込みフォントの名前です。
 
fontWeight:String — フォントの太さを指定します。flash.text.engine.FontWeight を使用します。
 
fontPosture:String — フォントの傾きを指定します。 flash.text.engine.FontPosture を使用します。

戻り値
Boolean — 互換性のある埋め込みフォントを利用できる場合は true、それ以外の場合は false を返します。

例外
ArgumentError — 指定された fontWeight は、flash.text.engine.FontWeight のメンバーではありません。
 
ArgumentError — 指定された fontPosture は、flash.text.engine.FontPosture のメンバーではありません。

関連項目

例の使用法
FontDescriptionExample.as

この例では FontDescription オブジェクトを作成し、それにデバイスフォントを割り当て、様々なフォントプロパティを設定し、ElementFormat オブジェクトに新しいオブジェクトを割り当てます。追加フォントのフォーマットは ElementFormat 内で行われます。 新しい TextElement が作成され、ElementFormat が指定されています。また、TextElementTextBlock のコンテンツとして使用されます。 テキストの行が、TextBlock から作成されます。

package {

    import flash.display.Sprite;
    import flash.text.engine.*;

    
    public class FontDescriptionExample extends Sprite {
        
        public function FontDescriptionExample():void {
            var fd:FontDescription = new FontDescription();
            fd.fontLookup = flash.text.engine.FontLookup.DEVICE;
            fd.fontName = "Palatino";
            fd.fontWeight = flash.text.engine.FontWeight.BOLD;
            fd.fontPosture = flash.text.engine.FontPosture.ITALIC;

            var ef1:ElementFormat = new ElementFormat(fd);
            ef1.fontSize = 30;
            ef1.color = 0xFF0000;
            
            var str:String = "This is flash text 0123456789";
            var tb:TextBlock = new TextBlock();
            var te1:TextElement = new TextElement(str, ef1);
            tb.content = te1;
            var line1:TextLine = tb.createTextLine(null, 600);
            addChild(line1);
            
        }
    }    
}