autotext

これは何?

Macromedia Flashでルビ付きテキストを簡単に表示するためのプログラムです。

sample.png

使い方

スクリプトの記述

fileautotext.as このスクリプトファイルを.flaと同じフォルダにおいてください。

そして、次のようなアクションを記述します。

#include "autotext.as"

_root.onLoad = function(){
	ATinit(); //初期化
	
	//各種データ 必要であれば再設定
	//ATx = 10; //画面上のX位置
	//ATy = 10; //画面上のY位置
	//ATbackground = 0xEEEEFF; //背景色
	//ATmx = 10; //余白X
	//ATmy = 10; //余白Y
	//ATwidth = 500; //横幅
	//ATheight = 300; //縦幅
	//ATindent = 3.2; //話者表記の文字数。小数点指定も可
	//ATxspace = 4; //単語と単語の間隔
	//ATyspace = 8; //行と行の間隔
	//ATbasez = 200; //描画優先順位
	//ATmaxwords = 1000; //最大テキスト内単語数
	//ATdelimiter = ":"; //話者の区切り文字
	//ATHfont = "SimHei"; //漢字のフォント名
	//ATPfont = "Arial"; //ピンインのフォント名
	//ATDfont = "MS ゴシック"; //単語意味のフォント名
	//ATHsize = 20; //漢字の文字大きさ
	//ATPsize = 12; //ピンインの文字大きさ
	//ATDsize = 16; //単語意味の文字大きさ
	//ATHcolor = 0x333399; //漢字の文字色
	//ATPcolor = 0x333399; //ピンインの文字色
	//ATScolor = 0xFF0000; //漢字選択中の文字色
	//ATDcolor = "#000000"; //単語意味の文字色。指定方法が他と違います
	//ATDbackground = 0xFFFF99; //単語意味の背景色
	//ATDborder = 0x666600; //単語意味の枠色
	//ATdelta = 10; //スクロールの移動量
	
	[ここにデータを打ち込む]
	
	//描画
	ATdraw();
}

各種データの部分は、デフォルトのままで使う場合は消してください。カスタマイズしたい場合は、コメントアウト「//」をはずして、具体的な値を記述してください。

実際のデータ

以下のように準備してください。

text.png

フォントの準備

アンチエイリアスしたフォントでないと見た目がイマイチ(注:中国語の場合)なので、すべてフォントを埋め込みます。

ATHfont = "SimHei"; //漢字のフォント名
ATPfont = "Arial"; //ピンインのフォント名
ATDfont = "MS ゴシック"; //単語意味のフォント名

ここで指定したフォントを埋め込みます。

fontemb.png

適当なテキストを配置して、「ダイナミックテキスト」とします。そして「文字...」ボタンをクリックして埋め込む文字種を選びます。

つまり、実際に表示するテキストの文字だけでなく想定される全ての文字を埋め込むため、生成されるFlashファイルは大きくなってしまいます(たとえば上記の場合4.5MB程度です)。

このテキストはフォントを埋め込むためだけに使いますので、インスタンス名は不要で、実際に文字は見えなくて構いません。

細かい説明

現状の問題点


Last-modified: 2016-09-06 (火) 15:10:54