Comunidad de diseño web y desarrollo en internet

Fuentes en Flash como en CSS en AS3

Esto es una actualización del tip Fuentes en Flash como en CSS en AS2, ahora veremos como se hace para AS3.

Código :

function getFont(list:Array, enumDeviceFonts:Boolean=false ):void 
{
    var have:Array = Font.enumerateFonts(enumDeviceFonts);
    for (var a = 0; a<list.length; a++) {
        for (var b = 0; b<have.length; b++) {
            if (list[a] == Font(have[b]).fontName ) {
                return list[a];
                break;
            }
        }
    }
    return '_sans';
}

Explicación

Lo único que hice para migrar fue cambiar "TextField.getFontList" por "Font.enumerateFonts". Pero el nuevo método para obtener las fuentes ahora tiene un parámetro que le indicará si queremos listar las Fuentes del Sistema o las Fuentes que tenemos Embebidas en la Librería.

Ejemplo de uso:

1. Fuentes del Dispositivo (estilo HTML)

  1. Colocar una caja de texto (TextField), en el escenario.
  2. Usar el siguiente código en el frame donde colocamos la caja de texto.

Código :

var _fontName:String = getFont(['Trebuchet MS','Arial','Helvetica'], true);
clab_txt.text = "This is Cristalab!";
clab_txt.setTextFormat( new TextFormat(_fontName, 12) );

2. Fuentes Embebidas

  1. Colocar una caja de texto (TextField), en el escenario.
  2. Agregar a la libreria 3 fuentes (Trebuchet MS,Arial,Helvetica), pueden colocarles el nombre que quieran y en las opciones de vinculación marque "Exportar para Actionscript".



  3. Luego usar el siguiente código en el frame donde colocamos la caja de texto.

Código :

var _fontName:String = getFont(['Trebuchet MS','Arial','Helvetica']);
clab_txt.text = "This is Cristalab!";
clab_txt.setTextFormat( new TextFormat(_fontName, 12) );
clab_txt.embedFonts = true;
Pueden ir probando usando otras fuentes para que noten los cambios cuando falte alguna fuente.

Como pueden ver en los 2 ejemplos de uso sólo cambio un parametro en getFont y se agrego embedFonts al texto.

¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.

Publica tu comentario

o puedes...

¿Estás registrado en Cristalab y quieres
publicar tu URL y avatar?

¿No estás registrado aún pero quieres hacerlo antes de publicar tu comentario?

Registrate