Para saber la longitud de una línea de texto, debemos usar el método getLineMetrics, este método devuelve muchos valores, entre ellos el width (el ancho de la línea que sea). La idea es compararlo con el ancho de una label.
Hagamos una función tal y como
Código ActionScript :
public function textoRecortado(texto:String):String{
var label:TextField=new TextField()
label.width=100 //<---el ANCHO con el que lo queremos comparar
label.text=texto
var metrics:TextLineMetrics=label.getLineMetrics(0)
var letras:Array = texto.split("");
if (metrics.width>label.width){
do {
letras.pop()
label.text=letras.join("")+"...";
metrics = label.getLineMetrics(0);
}while (metrics.width > label.width)
}
return letras.join("")+"...";
}
Así, sólo tendremos que escribir
Código ActionScript :
milabel.text=textoRecortado(""Hola Mundo, esta es una línea muy larga");