カスタム文字セットの作成

Flash のデフォルトの文字セットを使用するだけでなく、独自の文字セットを作成して [文字の埋め込み] ダイアログボックスに追加できます。たとえば、各種のアクセント記号付き文字をサポートするために、あるフィールドでは Extended Latin を使用したいという場合があるかもしれません。しかし、数字と区切り記号が必要ない場合や、大文字だけが必要な場合もあります。そのような場合に、文字セット全体を埋め込むのではなく、必要な文字だけが含まれるカスタム文字セットを作成できます。この方法だと、必要のない文字に関する余分なフォント情報を格納する必要が一切ないため、SWF ファイルのサイズをできる限り小さく保つことができます。

カスタム文字セットを作成するには、"C:¥Program Files¥Adobe¥Adobe Flash CS3¥<言語>¥First Run¥FontEmbedding¥" ディレクトリにある "UnicodeTable.xml" ファイルを編集する必要があります。このファイルでは、文字セットおよび文字セットに含まれる文字の範囲および文字が定義されます。

カスタム文字セットを作成する前にまず、必要とされる XML 構造について理解しておく必要があります。次の XML ノードでは、文字セット Uppercase [A..Z] が定義されています。

<glyphRange name="Uppercase [A..Z] " id="1" >
    <range min="0x0020" max ="0x0020" />
    <range min="0x0041" max ="0x005A" />
</glyphRange>

glyphRange ノードには nameUppercase [A..Z]id という項目がある点に注目してください。glyphRange ノードには必要なだけ子ノード range を定義できます。range には、前のコードに出てくる 0x0020 (空白文字) のように文字を 1 つだけ指定することも、2 番目の range 子ノードのように文字の範囲を指定することもできます。1 文字だけを埋め込むには、min 値と max 値に同じ Unicode 値を設定します。

XML の glyphRange ノードの別の例として、次の Numerals [0..9] ノードがあります。

<glyphRange name="Numerals [0..9] " id="3" >
    <range min="0x0030" max ="0x0039" />
    <range min="0x002E" max ="0x002E" />
</glyphRange>

ここでは、文字の範囲として Unicode 値 0x0030 (ゼロ) から 0x0039 (9) までと、0x002E (.) が設定されています。

カスタム文字セットを作成する前に、文字とそれに対応する Unicode 値を知っておく必要があります。Unicode 値を知りたい場合、Unicode 規格の Web サイト (www.unicode.org) を参照してください。このサイトでは、多数の言語の文字についての Unicode 文字コード表が参照できます。

注意

 

カスタム文字セットを追加するには、Flash のインストールフォルダにある XML ファイルを編集する必要があります。このファイルを編集する前には、元の Unicode 表に戻したい場合に備えてバックアップコピーを作成しておいてください。

注意

 

アドビ システムズ社では、Flash のインストール時に一緒にインストールされた既存の文字セットを変更することはお勧めしていません。代わりに、必要な文字および区切り記号が記述された独自のカスタム文字セットを作成することをお勧めします。

カスタム文字セットを作成および使用するには :

  1. "<Flash のインストールディレクトリ>¥<言語>¥First Run¥FontEmbedding¥" ディレクトリにあるドキュメント "UnicodeTable.xml" を、Notepad や TextEdit などの XML エディタやテキストエディタで開きます。

    メモ

     

    ファイルを Flash インストール時のオリジナルに戻したい場合に備えて、このドキュメントのバックアップを保存するのを忘れないでください。

  2. XML ドキュメントの最後までスクロールし、一番最後の </fontEmbeddingTable> ノードの直前に次の XML コードを直接追加してください。
    <glyphRange name="Uppercase and Numerals [A..Z,0..9] " id="100" >
        <range min="0x0020" max ="0x0020" />
        <range min="0x002E" max ="0x002E" />
        <range min="0x0030" max ="0x0039" />
        <range min="0x0041" max ="0x005A" />
    </glyphRange>
    
  3. 変更内容を UnicodeTable.xml に保存します。

    Flash が開いている場合、作成した新しい文字セットを使用するには Flash を再起動する必要があります。

  4. Flash を起動または再起動し、新しい Flash ドキュメントを作成します。
  5. テキストツールを使ってステージ上に新しく TextField インスタンスを追加します。
  6. プロパティインスペクタでこの TextField インスタンスのテキストタイプを [ダイナミックテキスト] に設定し、[埋め込み] をクリックして [文字の埋め込み] ダイアログボックスを開きます。
  7. [文字の埋め込み] ダイアログボックスの一番下までスクロールし、作成した新しいカスタム文字セット [Uppercase and Numerals [A..Z,0..9] (38 glyphs)] を選択します。
  8. 任意の他の文字セットを選択し、[OK] をクリックします。

    カスタム文字セット [Uppercase and Numerals [A..Z,0..9]] に加えてデフォルトの文字セット [大文字 [A..Z]] や [数字 [0..9]] を選択しても、埋め込まれる文字数は変わらない点に注目してください。これは、大文字の文字がすべてカスタム文字セットに含まれているためです。Flash では文字を二重に埋め込むことはしないため、ファイルサイズを極力抑えることができます。含まれる文字数が 38 のこのカスタム文字セットに加えて、文字数が 52 の文字セット [句読点記号] を選択しても、Flash では 90 文字ではなく 88 文字分の情報を保存します。これは、カスタム文字セットに空白とピリオドが既に含まれていて重複するためです。

    ヒント

     

    [文字の埋め込み] ダイアログボックスでの文字セットの位置は、XML ドキュメントで記述されている位置に基づいて決まります。XML ファイル内で <glyphRange> パケットを移動させることで、カスタム文字セットも含め、表示される文字セットの順序を変更できます。


 

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

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000894.html