Pour un projet personnel, j'avais besoin d'intégrer une police à mon application Flex. Cette police n'était pas une police Windows standard (Arial, Verdana,…) mais une police téléchargée sur Internet.
Pour qu'elle soit utilisée dans toute mon appli Flex, j'ai utilisé la directive CSS font-face suivante:
@font-face {
src: url("fonts/font.ttf");
fontFamily:AvantGarde-Book;
}
global{
fontFamily:AvantGarde-Book;
}
Cependant, à la compilation, Flex m'a lancé l'erreur suivante:
exception during transcoding: Unexpected exception encountered while reading font file 'font.ttf'
Même s'il y a plusieurs cas d'utilisation pour les system fonts et device fonts, les polices le plus fréquemment dans les application Flex sont les polices Embarquées (embedFonts). Les polices de texte embedded sont en fait les contours de police compilés avec le .swf, garantissant que tous les utilisateurs auront le même rendu. L'inconvénient avec les polices embedded est qu'elles peuvent augmenter la taille du fichier .swf. Cependant, puisqu'on considère que les applis Flex sont des RIA (Rich Internet Applications), cette augmentation de taille ne sera pas forcement un problème. Dans certains cas, l'augmentation de la taille peut être réduite en embarquant uniquement le contour des polices dont on à besoin pour l'application en question.
Il y a d'autres raisons pour lesquelles on utilise les embed fonts, les polices embarquées résolvent plusieurs problèmes rencontrés avec les polices système.