Questo funziona perfettamente solo nel caso in cui il testo sia in linea singola.
Per prima cosa è necessario aggiungere una riga di interruzione iniziale in ogni testo. L'ho fatto in un nuovo componente che estende TextField e sovrascrive la funzione "testo", aggiungendo il carattere di interruzione iniziale.
import flash.text.TextField;
public class MyTextField extends TextField
{
public function MyTextField()
{
super();
}
public override function set text(value:String):void
{
value = "\n" + value;
super.text = value;
}
}
allora avete bisogno di applicare in formato al testo, un uso del "leader" proprietà che rappresenta la quantità di spazio verticale tra le righe.
myTextFormat = new TextFormat();
// This is the existent horizontal align
myTextFormat.align = TextFormatAlign.CENTER;
// This is my simulated vertical align. Remember that the first character
// is always a break line. In most cases it will be a negative value...
myTextFormat.leading = -22;
var myTextField:MyTextField = new MyTextField();
myTextField.text = "Hello";
myTextField.setTextFormat(myTextFormat);
Spero che questo possa aiutare qualcuno che ha bisogno di allineamento verticale nel testo a riga singola utilizzando TextField. :-)
Non spostando il campo di testo si sposta anche il testo? – felwithe