ダイナミックテキストの文字詰め(文字間隔)の調整をActionScriptでする //AS
ダイナミックテキストに読込んだ文字列の文字間隔(字間)を制御したいと思い調べてみました。
文字間隔で使うのは、
TextFormat.kerning
TextFormat.letterSpacing
です。
結論は、以下を満たせばできます。
・WindowsのFlashでパブリッシュする
・フォントを埋込んだテキストである
残念ながら普段使っているFlashはMachintosh版のFlashCS3なので、実際に使えませんでしたが、せっかくなので参考のために使い方を記録しておきます。
//ActionScript//////////////////////////////////////////////////////////////////
private function setTextarea(object:MovieClip){
var fmt:TextFormat = createTextFormat();
object.setTextFormat(fmt);
object. = true;
object.antiAliasType = "advanced";
}
private function createTextFormat() :TextFormat {
var fmt:TextFormat = new TextFormat();
fmt.font ="common_font";
fmt.kerning = true;
fnt.letterSpacing = 10;
return fmt;
}
setTextarea(sample_txt);
で、sample_txtに対してフォント埋込みと、文字間調整ができる(はず)。
でも、なぜMac版Flashではできないのかが納得いきません。
文字間隔で使うのは、
TextFormat.kerning
TextFormat.letterSpacing
です。
結論は、以下を満たせばできます。
・WindowsのFlashでパブリッシュする
・フォントを埋込んだテキストである
残念ながら普段使っているFlashはMachintosh版のFlashCS3なので、実際に使えませんでしたが、せっかくなので参考のために使い方を記録しておきます。
//ActionScript//////////////////////////////////////////////////////////////////
private function setTextarea(object:MovieClip){
var fmt:TextFormat = createTextFormat();
object.setTextFormat(fmt);
object. = true;
object.antiAliasType = "advanced";
}
private function createTextFormat() :TextFormat {
var fmt:TextFormat = new TextFormat();
fmt.font ="common_font";
fmt.kerning = true;
fnt.letterSpacing = 10;
return fmt;
}
setTextarea(sample_txt);
で、sample_txtに対してフォント埋込みと、文字間調整ができる(はず)。
でも、なぜMac版Flashではできないのかが納得いきません。