作者etrexetrex (moonet)
看板Flash
标题[心得] Flash 的动态文字字型大小限制在127以下
时间Fri Mar 16 18:44:04 2012
blog:
http://etrex.blogspot.com/2012/03/flash-textfield-font-size-limit.html
以下实验证明 flash 的动态文字字型大小是受限的
我用程式产生字型大小 116 ~ 130 的 TextField 并作滑鼠感应
当滑鼠移动到 TextField 上时显示字型大小
证明字型大小最大只能到 127
==== demo ====
http://dl.dropbox.com/u/7377053/flash/textFieldFontSizeTest.html
==== source ===
http://dl.dropbox.com/u/7377053/flash/textFieldFontSizeTest.fla
==== code ====
http://paste.plurk.com/show/948935/
tooltip.targetAlpha = 0;
var textFormat:TextFormat = new TextFormat();
function getTextField(size:int):TextField{
var t:TextField = new TextField();
t.text = "A";
textFormat.size = size;
t.selectable = false;
t.setTextFormat(textFormat);
t.autoSize = TextFieldAutoSize.LEFT;
t.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
t.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
return t;
}
function onMouseOver(e:MouseEvent):void{
var t:TextField = (TextField)(e.target);
tooltip.targetAlpha = 1;
tooltip.t.text = t.getTextFormat().size;
}
function onMouseOut(e:MouseEvent):void{
var t:TextField = (TextField)(e.target);
tooltip.targetAlpha = 0;
}
this.addEventListener(Event.ENTER_FRAME, onEnterFrame);
function onEnterFrame(e:Event):void{
tooltip.x += (this.mouseX - tooltip.x) * 0.2;
tooltip.y += (this.mouseY - tooltip.y) * 0.2;
tooltip.alpha += (tooltip.targetAlpha - tooltip.alpha) * 0.2;
}
for(var i = 116 ; i <= 130 ; i ++ )
{
var t:TextField = getTextField(i);
var n = this.numChildren - 1;
t.x = n % 5 * 100;
t.y = Math.floor(n /5) * 100;
this.addChild(t);
}
this.addChild(tooltip);
==== Try yourself ====
1. 开flash CS X
2. 弄个静态文字 字型大小设成 200
3. 把静态文字切换到动态文字
会发现字变小了
==== 怎麽解决这个问题?====
用 Sprite 装 TextField 再对 Sprite 作放大
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.137.198.18
※ 编辑: etrexetrex 来自: 140.137.198.18 (03/16 18:52)
1F:推 ticore:也可以改用新的FTE(Flash Text Engine) 03/17 10:26
3F:→ etrexetrex:结果最後是用 TLFTextField 作 03/22 11:11