Manejo de fuentes en Flex

Categories: Desarrollo WebInDatcomRIA

Una tarea muy importante en Flex es la de incluir fuentes en tu aplicación. Esta se puede realizar de diferentes maneras, la mas común es utilizando el tag @font-face por medio de CSS, ya sea desde una hoja de estilos externa o empleando el tag mx:Style dentro de tu MXML.
Nota:Este método lo puedes utilizar solamente para fuentes del tipo True Type (ttf) y Open Type (otf). Para utilizar fuentes en otro formato, es necesario incluir las fuentes en un archivo .swf.

Ejemplo:

<mx:Style>

@font-face {

src: url(“fonts/Futura-Condensed-Bold.ttf”);

fontFamily: futuraB;

advancedAntiAliasing: true;

font-weight:bold;

font-style:normal;

}

</mx:Style>

Es muy importante asignar el fontWeight y fontStyle adecuado. Por ejemplo si en el código anterior asignáramos un fontStyle:italic, el debbuger nos arrojaría el siguiente error, donde indica que ese estilo no se encuentra en la fuente:

exception during transcoding: Font for alias ‘futuraB’ with italic style was not found at: file:/E:/Flex Projects/Fonts/src/fonts/Futura-Condensed-Bold.ttf …

El manejo de fuentes en flex puede ser en ocasiones una tarea muy frustrante, porque te puedes topar con errores que no te brindan ni una pista de lo que puede estar mal y no hay mucha documentación al respecto; uno muy común con el que nos hemos encontrado es el siguiente:

exception during transcoding: Unexpected exception encountered while reading font file ‘/E:/Flex Projects/Fonts/src/fonts/Futura-Condensed-Bold.ttf’ …

Las causas de este error pueden ser varias, por ejemplo, si se asigna un valor de advancedAntiAliasing:true, cuando la fuente que estas tratando de incluir no lo soporta. Para descartar que alguna propiedad este causando conflicto, hay que poner en el tag @font-face solamente el src y fontFamily.

Otra causa a este error es que el manejador de fuentes de actionscript no interpreta tu fuente correctamente. Hay 3 manejadores que trascodean fuentes: flash.fonts.JREFontManager, flash.fonts.AFEFontManager y flash.fonts.BatikFontManager.
En teoría, estos manejadotes tienen capacidades diferentes y dependiendo del tipo de fuente automáticamente se selecciona el que “mejor” haga el trabajo, pero en ocasiones no sucede de esta manera; así que una alternativa es forzar al compilador a usar un manejador AFEFontManager que parece ser el que tiene mejor soporte para fuentes. Para esto es necesario hacer lo siguiente:

Clic en Project -> propiedades.
Una vez abierto la ventana, seleccionar la sección de Flex Compiler.
En la caja de texto additional compiler arguments agregar
-managers=flash.fonts.AFEFontManager

Nuevo sitio web 3erPiso Records

Categories: Desarrollo WebInDatcomIntegracion TecnologicaMultimediaProyectosRIA

3erPiso Records en un sitio dinámico en la que se presenta la información de la disquera, los eventos que realizaran pronto, noticias, asi como todos los datos de los artistas que forman parte de la disquera. Toda esta información decimos que es dinámica, debido a que se desarrolló un manejador de contenidos unificado, en el que ellos pueden introducir, modificar o borrar la información que desean que aparezca en su página.

El sitio también es proveedor de contenido multimedia, ya que se pueden subir imágenes, audios y videos, que de igual manera pueden ser accedidos por medio de la página y reproducirlos dependiendo del caso.

Los detalles:

  • El sitio fue desarrollado utilizando Flex, PHP y MySQL.
  • Se utilizó amfphp para “hablar” directamente desde flex a php de manera binaria, optimizando de esta manera el sitio y evitar el uso de xml o json que requieren el “parseo” de datos haciendo las aplicaciones más lentas.
  • Se puso en práctica la integración entre Flash y Flex para realizar animaciones entre secciones, utilizando estados y eventos, para controlar desde flex las animaciones hechas en flash. También se empleó flash para generar el skinning de los componentes utilizados.
  • El framework de flex se utiliza como RSL (remote shared library), con la finalidad de hacer las aplicaciones mas livianas, ya que el código que proporciona el framework es guardado en el cache del navegador o en el del flash player dependiendo de la versión que se tenga de este ultimo, por lo tanto el framework se carga una sola vez y la aplicación es la única que se carga al momento de ejecución.

Una probadita de la pagina:

El manejador de contenidos:

Adobe Anuncia Flash Media Encoding Server

Categories: Desarrollo WebInDatcomIntegracion TecnologicaRIA

Flash Media Encoding Server es el nueva solución que adobe esta brindando para convertir diferentes formatos de video a FLV de manera eficiente. Flash media encoding Server es un nuevo elemento para agregarse a la familia de Flash Media Server que hasta ahorita incluyen a Adobe Flash Media Interactive Server 3, Adobe Flash Media Streaming Server 3 y Adobe Flash Media Rights Management Server.

Esta es una excelente noticia ya que el proceso de “Encoding” es crucial para cualquier empresa que requiere preparar videos para publicarlo en la Web, aplicaciones de escritorio, incluso en dispositivos móviles, ahora con FMES y su plataforma de nivel “Enterprise” es una muy buena opción para compañías con estas necesidades. Solo falta esperar el release final que será publicado a finales del 2008 y se estima que tendrá un costo de $6,000 USD. Para mas información haz click aqui.

Nuevo entrenamiento “AIR for Flex Developers” de Lynda.com

Categories: Desarrollo WebInDatcomIntegracion TecnologicaRIAWeb 2.0

Lynda.com ha presentado su nuevo curso de entrenamiento online “AIR para desarrolladores Flex” que es la continuación al curso AIR Essential Training.

air for flex developers

Este curso muestra como Flex Builder 3 y el framework Flex 3 pueden ser utilizados para desarrollar aplicaciones de escritorio multiplataforma con adobe AIR.

El curso incluye los puntos de integración con los diferentes sistemas operativos, examina el manejo de sistema de archivos local, como crear y mantener una base de datos local, el manejo de ventanas, menús y comportamientos nativos del sistema operativo como drag and drop y el uso del clipboard, entre otras técnicas avanzadas.

Tabla de contenidos del curso

Si estas buscando entrenamiento para aprender Adobe AIR un poquito más avanzado esta es una opción ampliamente recomendable :)

Sitio oficial 3erPiso Records totalmente Flex

Categories: Desarrollo WebInDatcomMultimediaProyectosRIAWeb 2.0

En las proximas semanas estaremos presentando el nuevo sitio de la disquera con base en Guadalajara 3erPiso Records, que cuenta con un catalogo de artistas creciente.

Para este desarrollo aplicamos una vez mas las 3 capas de nuestra plataforma, y a nivel frontend el sitio es 100% componentes de Flex.

Los departamentos de RIA y Multimedia se toparon con todo el proceso de desarrollo en Flex con estados para las acciones. En el siguiente link pueden ver una de las fases de desarrollo en donde se “hilan” (como le digo yo) todas las secciones del sitio con sus estados y transiciones entre cada una.

escenario

Una aplicacion mas implementada en nuestro Panel de Control Unificado, lo cual nos da una gran flexibilidad, control y manejo sobre los desarrollos.

Panel de Control 3erPiso

Panel de Control 3erPiso

Flash dinámico y RIAs ahora son indexables por Google y Yahoo

Categories: Desarrollo WebInDatcomRIA

El día de hoy Adobe Systems ha facilitado la información necesaria a Google y Yahoo para mejorar la indexación de contenido web dinámico y RIAs con formato flash.

Los motores de búsqueda ya indexaban texto estático y links dentro de archivos flash, pero el contenido de las RIAs era casi “invisible” para los robots debido a sus continuos cambios de estado y a que la información que presentan se recibe en tiempo de ejecución desde el servidor. Ahora es una excelente noticia para toda la comunidad que desarrollamos RIAs y contenido dinámico, ya que no será necesario realizar ningún cambio o “hack” para que nuestras aplicaciones obtengan buen posicionamiento.

La manera en que funciona es mediante un flash player optimizado que ayudará a Google y Yahoo a buscar en cada bit de los archivo swf. Actuará practicamente como un humano, hará clic en botones, menus y demás componentes para obtener la información que normalmente se obtiene del servidor al interactuar con el usuario, la cual es relevante para los motores de búsqueda y consecuentemente brindará a tu aplicación un buen ranking.
Google ya implementó el flash player optimizado a sus motores de búsqueda, mientras que yahoo lo hará en una actualización futura de Yahoo search.

Asi que ahora a desarrollar RIAs sin miedo a no ser encontrado por los buscadores ;)