Lesson 7 - Using Text



-Actionscript 3.0-

Flash CS5 introduce el texto TLF (Text Layout Format). Incluye muchas má configuraciones que el texto clásico.
Pueden crearse cajas de texto vinculadas por la que fluya el texto, puede dividirse una caja en varias columnas,
escribir texto vertical, orientarse en un espacio 3D y muchas opciones para configurar la tipografía. El texto TFL para
funcionar depende de una biblioteca ActionScript externa en un archivo .SWZ que conviene subir con la película SWF.
Es posible además incluir esta biblioteca dentro de la misma película
(Archivo/Configuración de la Publicación -> Opciones de ActionScript 3.0).

En este ejercicio se utiliza la edición avanzada de texto con TFL para crear la página, y con un script se crea
el calculador de hipotecas, utilizando casillas de texto editable por el usuario y script con toda la fórmula que lo calcula.

/* Primero se definen tres variables.
La variable term es un número, y es 1360.
price es otro número, y es 35000
monthlypayment es otro número,
pero no se sabe cual, es el que se calcula*/

var term:Number=360;
var price:Number=350000;
var monthlypayment:Number;
/* Ahora cogemos el botón de calcular y incluimos un listener y la función calculatemonthlypayment*/
calculate_btn.addEventListener(MouseEvent.CLICK, calculatemonthlypayment);

/* Para la definición de la función se incluye la definición de otras dos variables,y toda la aritmética para calcular el pago mensual*/
function calculatemonthlypayment(e:MouseEvent):void
{ var loan:Number=price-Number(down_txt.text)/100*price;
var c:Number=Number(rate_txt.text)/1200;
monthlypayment = loan*(c*(Math.pow((1+c),term)))/(Math.pow((1+c),term)-1);
monthly_txt.text=String(Math.round(monthlypayment)); }
/* La propiedad .text hace referencia a las cajas de texto Number() se utiliza para establecer que el contenido de una caja es numérico.
Para emplear texto, usaremos String()*/


Después mediante otro script, se hace que la página cargue un texto alternativo para los contenidos de la página (incluido en archivos de texto plano).

/*Primero el código para reemplazar el banner con la dirección (address_txt).
Introducimos en lugar de la URL el archivo de texto con el texto.
Carga un archivo de texto externo y lo visualiza en el panel Salida.
La dirección puede ser un vínculo relativo o un vínculo "http://".
La dirección debe estar encerrada entre comillas ("").*/
var fl_TextLoader:URLLoader = new URLLoader();
var fl_TextURLRequest:URLRequest = new URLRequest("07SampleRealEstate2-address.txt");
fl_TextLoader.addEventListener(Event.COMPLETE, fl_CompleteHandler);
function fl_CompleteHandler(event:Event):void { var textData:String = new String(fl_TextLoader.data);

/*Reemplazamos trace(textData); por address_txt.text=textData; el objeto de texto sobre el que se carga el nuevo texto*/
address_txt.text=textData; } fl_TextLoader.load(fl_TextURLRequest);
/*Después repetimos el proceso con las tres columnas de la información del piso (info_txt).
Es importante volver a usar el panel de Fragmentos de código para incluir el código,
ya que así no repetimos nombre s de funciones, sino que nos añade un número
a definiciones que ya aparecen.*/

var fl_TextLoader_2:URLLoader = new URLLoader(); var fl_TextURLRequest_2:URLRequest =
new URLRequest("07SampleRealEstate2-info.txt");

fl_TextLoader_2.addEventListener(Event.COMPLETE, fl_CompleteHandler_2);
function fl_CompleteHandler_2(event:Event):void { var textData:String = new String(fl_TextLoader_2.data);
/*Reemplazamos trace(textData); por info_txt.text=textData; el objeto de texto sobre
el que se carga el nuevo texto*/

info_txt.text = textData; } fl_TextLoader_2.load(fl_TextURLRequest_2);
/*Por último repetimos lo mismo para los bloques de texto con la definicion (description_txt).*/ var fl_TextLoader_3:URLLoader = new URLLoader();
var fl_TextURLRequest_3:URLRequest = new URLRequest("07SampleRealEstate2-description.txt");
fl_TextLoader_3.addEventListener(Event.COMPLETE, fl_CompleteHandler_3);
function fl_CompleteHandler_3(event:Event):void {
/*Reemplazamos trace(textData); por description_txt.text=textData;
el objeto de texto sobre el que se carga el nuevo texto*/
var textData:String = new String(fl_TextLoader_3.data); description_txt.text=textData; } fl_TextLoader_3.load(fl_TextURLRequest_3);

Problemas al pasar ActionScript a HTML5:

    El archivo no puede convertirse, entre otros motivos por el texto TLF..

NOTAS:


<- Volver al Índice