Adam Katz
Adam Katz

Reputation: 6964

as3 change font size as stage size changes

As it reads I want to change the font size as the stage size changes.

I have private var myFormat:TextFormat = new TextFormat();

And then when the object gets made it writes the following

        _buttonText.wordWrap = true;

        myFormat.size = 15;
        myFormat.align = TextFormatAlign.CENTER;
        _buttonText.textColor = 0x222428;
        myFormat.bold = 'true';
        _buttonText.defaultTextFormat = myFormat;       
        _buttonText.text = text;

Then in my on enter frame I want to resize the text, I have tried a couple things but nothing seems to work, currently it looks like this.

      myFormat.size = stage.stageWidth / 136.53;

Thanks for any help

Upvotes: 0

Views: 508

Answers (1)

BotMaster
BotMaster

Reputation: 2223

A TextFormat object has no effect unless applied to a TextField. Besides if the font size should be linked to the stage size then a factor size of some kind should be applied as well. At the end it looks like this:

myFormat.size = 15 * fontSizeFactor;
//_buttonText.defaultTextFormat = myFormat;this is irrelevant if size should be dynamic.
//instead text should be set then TextFormat should be set again.
_buttonText.text = text;   
_buttonText.setTextFormat(myFormat);//this is dynamic

now on enter frame:

myFormat.size = 15 * fontSizeFactor;
_buttonText.setTextFormat(myFormat);//apply the format again or else nothing will happen

Upvotes: 1

Related Questions