TextField まわりの確認 vol.1
♥0 |
Line 52 |
Modified 2009-10-21 22:43:13 |
MIT License
archived:2017-03-20 12:33:23
ActionScript3 source code
/**
* Copyright soundkitchen ( http://wonderfl.net/user/soundkitchen )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/r2Ef
*/
package
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.PixelSnapping;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageQuality;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
[SWF(width=465, height=465, frameRate=30, backgroundColor=0xffffff)]
public class Main extends Sprite
{
public static const MESSAGES:String = "あーてすてす";
public function Main()
{
var s:String, pos:Number,
format:TextFormat,
original:TextField,
fake:Bitmap,
data:BitmapData,
tmp:TextField;
// フォーマット
format = new TextFormat("Arial", 24);
// オリジナル
original = new TextField();
original.x = 100;
original.y = 20;
original.defaultTextFormat = format;
original.autoSize = TextFieldAutoSize.LEFT;
original.text = MESSAGES;
// フェイク
// サイズはオリジナルから取ってくる
data = new BitmapData(original.width, original.height, true, 0);
fake = new Bitmap(data, PixelSnapping.ALWAYS, true);
fake.x = 100;
fake.y = 50;
pos = 0;
for each (s in MESSAGES.split(""))
{
tmp = new TextField();
tmp.defaultTextFormat = format;
tmp.autoSize = TextFieldAutoSize.LEFT;
tmp.text = s;
tmp.x = pos;
pos += tmp.textWidth;
data.draw(tmp, tmp.transform.matrix);
}
// ステージに置く
addChild(original);
addChild(fake);
}
}
}