Cristalab

Cómo crear un Visor de Fuentes del sistema en Actionscript 3

Por: Carloz.Yanez + 01.11.2007

Varias veces he tenido problemas al visualizar fuentes, al trabajar en Windows XP el visor de fuentes apestaba, y en las aplicaciones, mostrar la vista previa era lento, aún teniendo pocas fuentes y mucha Ram.

En este Tip les mostraré como crear un Visor de Fuentes en Actionscript 3.

Lo primero que haremos será crear un Documento nuevo y guardarlo.

Posteriormente creamos nuestra interface a la cual añadiremos un Componente List, que se encargará de mostrar los nombres de las fuentes y servirá como Listener para cambiar la fuente de la vista previa, le damos como nombre de instancia fontList.

Despues añadimos un TextField Dinamico y lo nombramos sampleText.

Abrimos el Panel de Acciones y escribimos el siguiente código:

Código :


import fl.data.DataProvider;

La clase DataProvider se encarga de añadir datos a Componentes de tipo lista como un ComboBox, un Datagrid, List, etc.

Código :


var fonts:Array = Font.enumerateFonts(true).sortOn("fontName");

var fontsArray:Array = new Array();

Creamos un Array que enlista los Objetos Fuente y otro que se encargará más adelante de nombrar esos objetos.

Código :


for (var i:int = 0; i < fonts.length; i++)
{
   fontsArray.push(new String(fonts[i].fontName));
}

Este código añade cada Objeto Fuente al Array de uno por uno, colocandole su nombre correspondiente.

Código :


fontList.dataProvider = new DataProvider(fontsArray);

fontList.addEventListener(Event.CHANGE, setFont);

Se le asignan los datos al componente List y se añade un Listener que llamará a la función que actualizará la fuente de la vista previa.

Código :


function setFont(event:Event):void
{
   var format:TextFormat = new TextFormat();
   
   format.font = new String(fontList.selectedItem.data);
   sampleText.setTextFormat(format);
}

Esta es la función que actualizara la vista previa, para eso se crea un Objeto TextFormat y se añade el item seleccionado a la propiedad font.

Con este corto y sencillo código obtenemos algo como esto:



Para apreciar mejor las fuentes puedes ver el SWF en pantalla completa aquí.

Etiquetas actionscript_3

Comentarios | Enviar un comentario
Buen Tip, muy útil el ejemplo Thumbs up
Se podría crear como aplicación de escritorio con AIR
Por: Zguillez
quiero aprender AS3 T_T
Por: penHolder
Muy pero que muy util.
Enhorabuena.
Por: One
gran ejemplo, se ve bastante bueno, solo que, me uno a penHolder, alguien de por ahi que sepa de un buen tutorial de AS3 de preferencia en español?????
Una pregunta, todos ustedes, los que saben de eso, como es que lo aprendieron?, asistieron a algun seminario o es solo leyendo y picando aqui y alla?
Graciaaaaas.
Por: Señor Oz_blog
Excelente tip y sumamente útil. Si lo compilas con AIR queda de lujo (como el widget de kuler, pero para fuentes Thumbs up )
Por: The Fricky!
Muy bueno!
prefiero ponerle un campo de introduccion de texto, asi se puedo ver las distintas letras
genial!!!
Por: CarlosRuminott
Gracias, muy buen tip
yo siempre he batallado con esos programas lentos para las fuentes.
Por: Biohazard_blog
Muy buen tip, pero falta una linea:
sampleText.text = "Sample Text";
Por: oxk4r_blog
Deja un comentario
IMPORTANTE

Recuerda ser respetuoso, no insultes a otras personas, ni uses palabrotas, hay una persona al otro lado de la pantalla.

Habla bien, NO ESCRIBAS EN MAYUSCULA TODO, no escribas como en un SMS, evita cosas como "ke", "x q" y demás abreviaciones.

Aquí funcionan las etiquetas de los foros, puedes usar [b] para negrita, [img] para las imágenes, [url] para los enlaces, etc.

Si tienes preguntas técnicas, envíalas mejor al foro.