Rss Feed

Talos

blog pro osvícence, kteří neovládají gramatiku

Průhlednost textového pole bez vložení fontu

Duben 19th, 2009 od , v kategorii Flash. Bez komentářů

Ve flash playeru 9, v actionscriptu 3 nastává problém pokud chcete nastavovat průhlednost textového pole. Těžko říct proč už se tento problém netýká flash playeru 10. Ale řešení pro devítku funguje korektně i v desítce.

Řešení je vcelku prosté pomocí spravného nastavení vlastnosti blendMode u textového pole. Průhlednost nám umožní když nastavíme blendMode na hodnotu BlendMode.LAYER.

//vytvoříme si nejdříve objekt pro naformátování textu
var txtFormat:TextFormat = new TextFormat();
txtFormat.font = "Arial";
txtFormat.size = 25;
txtFormat.align = TextFormatAlign.CENTER;
 
//potom vytvoříme samotné textové pole
var txt:TextField = new TextField();
//nastavíme danou vlastnost
txt.blendMode=BlendMode.LAYER;
txt.text = "Zkušební text";
txt.setTextFormat(txtFormat);
txt.width = 200;
txt.height = 35;
txt.x = 50;
txt.y = 50
 
addChild(txt);
 
function changeAlpha(evt:MouseEvent):void{
	Tweener.addTween(txt,{alpha:0, time:2, transition:"easeOutBounce"});
	Tweener.addTween(txt,{alpha:1, time:2, transition:"easeOutBounce",delay:2});
}
//nastavíme listener pro spuštění animace s průhledností
alphar.addEventListener(MouseEvent.CLICK,changeAlpha);

Skript počítá s tím že na ploše máme umístění movie clip či button s názvem alphar, na který když klikneme, tak se spustí animace.

Ukázka