имхо сначала режем, а потмо в битмапу) я попробовал так.

Код AS1/AS2:
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.filters.BlurFilter;
import flash.filters.GlowFilter;
//////////////-------------- Функция появления --------------//////////////
function mcAppear(mc:MovieClip, startPos:Number, endPos:Number, time:Number):Void
{
var mcScaleX:Tween = new Tween(mc, "_xscale", Elastic.easeOut, startPos, endPos, time, true);
var mcScaleY:Tween = new Tween(mc, "_yscale", Elastic.easeOut, startPos, endPos, time, true);
//var mcAlpha:Tween = new Tween(mc, "_alpha", None.easeNone, 0, 100, time, true);
var mcDispose:Tween = new Tween(mc, "_x", Regular.easeOut, mc._x - 50, mc.xx, time, true);
}
function mcDisAppear(mc:MovieClip, time:Number):Void
{
var mcAlpha:Tween = new Tween(mc, "_alpha", None.easeNone, 100, 0, time, true);
var mcDispose:Tween = new Tween(mc, "_x", Regular.easeOut, mc._x, mc.xx + 50, time, true);
}
//////////////-------------- Функция перерисовки в битмапу --------------//////////////
function copyBitmap(mc:MovieClip, name:String):MovieClip
{
var bmp = new flash.display.BitmapData(mc._width, mc._height, true, 0);
bmp.draw(mc);
var clip:MovieClip = mc._parent.createEmptyMovieClip(name, mc._parent.getNextHighestDepth());
var bmc:MovieClip = clip.createEmptyMovieClip('bmc', 0);
bmc.attachBitmap(bmp, 0, "none", true);
bmc._x = - bmc._width / 2;
bmc._y = - bmc._height / 2;
return clip;
}
//////////////-------------- Функция заполнения --------------//////////////
function fillClip(hmc:MovieClip, str:String):Void
{
var strArr:Array = str.split('');
var total:Number = strArr.length;
var offset:Number = 0;
for(var i:Number = 0; i < total; i++)
{
var mc:MovieClip = hmc.createEmptyMovieClip('mc' + i, hmc.getNextHighestDepth());
var mcFTM:TextFormat = new TextFormat();
mcFTM.size = 16;
mcFTM.bold = true;
mcFTM.color = 0x999999;
mcFTM.font = "Trebuchet"; // это линкеджй встроенного шрифта
var mcTF:TextField = mc.createTextField('mcTF', 0, 0, 0, 10, 10);
mcTF.selectable = false;
mcTF.text = strArr[i];
mcTF.autoSize = true;
mcTF.embedFonts = true; // внимание, юзаю встроенный шрифт!
mcTF.setTextFormat(mcFTM);
var bmc:MovieClip = copyBitmap(mc, 'bmc' + i);
bmc._x = bmc.xx = offset;
offset += (bmc._width + 2);
bmc._xscale = bmc._yscale = 0;
mc.removeMovieClip();
setTimeout(mcAppear, 100 * i, bmc, 500, 100, 2);
}
}
var str:String = 'I know, what you were doing last summer...';
var hmc:MovieClip = this.createEmptyMovieClip('hmc', 0);
fillClip(hmc, str);
hmc._x = (Stage.width - hmc._width) / 2;
hmc._y = (Stage.height - hmc._height) / 2;
З.Ы. вопрос, как можно прикрутить допустим фильтр глоу изменяющийся тем же твином к каждому клипу-букве что бы он работал корректно? Поясню, просто прикрутить я и сам могу, проблема в том что при анимации он ведет себя не корректно и "пикселизован", кароч выглядит не как обычно и очень неадекватно. Пробую делать так:

Код AS1/AS2:
var mcGlow:Tween = new Tween(mc, "glow", Regular.easeOut, 10, 0, time, true);
mcGlow.onMotionChanged = function()
{
mc.filters = [new GlowFilter(0xFFFFFF, 1, glow, glow, 2, 3, false, false)];
}