コメント、TBは過去記事でも大歓迎です♪
是非、アシアト・感想残してって下さいネ-(*´ -`)(´- `*)ネー
管理人へのメールはこちらからどーぞ♪

いただきストリートDS Wi-Fi対戦希望のかたはプロフ登録の上、ご利用ください♪
いたストDS 待ち合わせ場所

カルドセプトDSはコチラ
カルドDS 待ち合わせ場所

Monthly Log
Search
google検索
Web kinarie.com
CATEGORIES


FlashDevelopでフォントの埋め込み

最近のFlash作成はFlexSDKを利用してFlashDevelopで開発しているのですが、このようにActionScriptのみ開発している場合のフォントの埋め込む方法の覚え書きです。

今回 zk designさんの所の記事を参考にしました。

最初はフォントファイルをそのまま埋め込んで利用しようかと思ったのですが、現在作っているのがカレンダーで必要な文字は”月火水木金土日年”と数字のみだったので、別途必要な文字のみを埋め込んでいるSWFを利用する方法を取りました。

以下ほとんど参考記事と同じですが、埋め込み手順です。


まずフォントを埋め込んだSWFの準備から

1.Flash8(以降のバージョンならOK)を立ち上げてダイナミックテキストフィールドを設置

2.テキストフィールドのプロパティで使用したいフォントを指定と埋め込みたい文字を"埋め込み"のところから指定する。(今回は"MS Pゴシック"を指定)

3.SWFを書き出す。(今回は"myFont.swf"としました)

もし埋め込みたいフォントを「ボールド」や「イタリック」などのスタイルを指定したい場合はさらにテキストフィールドを設置してそれぞれスタイルを指定してから書き出します。

つぎはActionScriptで上でのSWFの埋め込みです。

[Embed(source="myFont.swf", fontName="MS Pゴシック")]
public static var fontPlain:Class;

埋め込みはこれで完了です。sourceのパスですが、FlashDevelop(3.0.0beta9)での開発の場合はメインのasファイルのあるsrcフォルダとなっているのでasファイルと一緒に入れておけばOKです。 2行目のクラス指定した名前は使いませんので何でもOKです。でも無いと動きません(笑


実際の使い方はテキストフィールドで「embedFonts」プロパティをtrueにして、フォントを上記の「fontName」で指定したものにすれば使うことができます。


以下は実際にカレンダーを作成するとき曜日を並べて表示した場合の例です。



var youbiArray:Array = new Array("日", "月", "火", "水", "木", "金", "土");
var youbiFMT:TextFormat = new TextFormat("MS Pゴシック", 12, 0x333333);
for (var i:uint = 0; i < 7; i++) {
var youbiTf:TextField = new TextField();
youbiTf.embedFonts = true;
youbiTf.text = youbiArray[i];
youbiTf.width = 18;
youbiFMT.align = "center";
youbiTf.setTextFormat(youbiFMT);
youbiTf.x = i * 18;
addChild(youbiTf);
}


となります。

参考にさせて頂いたzk designさんありがとうございました。

Category:[Flash]
2008,11,27 | CM (0) | TB (0) | wrote by Masa

Trackback
このエントリーのトラックバックURL:
トラックバックは嬉しいものですので、関連記事からであればお気軽にどうぞ
宣伝目的や無関係のエントリーからのトラックバックの場合は、削除させていただく場合もありますので、ご了承ください。

※トラックバックエラーによる重複はこちらで削除しますので、お気になさらないで下さい。
その際、削除依頼コメントは不要です。

Comments

Movable Type 3.35