Fonctions avancées d'affichage de texte

Le paquet flash.text d'ActionScript 3.0 offre plusieurs classes qui permettent de contrôler les propriétés du texte affiché, notamment les polices incorporées, les paramètres de lissage, le canal alpha et autres paramètres spécifiques. La Référence du langage et des composants ActionScript 3.0 fournit des descriptions détaillées de ces classes et de leurs propriétés, notamment des classes CSMSettings, Font et TextRenderer.

Sous-rubriques

Utilisation de polices incorporées
Contrôle de la netteté, de l'épaisseur et du lissage

Utilisation de polices incorporées

Si vous spécifiez une police précise pour un objet TextField de votre application, Flash Player recherche une police résidente du même nom sur l'ordinateur de l'utilisateur. Si cette police n'est pas chargée sur cet ordinateur, ou s'il existe une police de ce nom mais dans une version légèrement différente, le texte peut apparaître très différent de ce que vous aviez prévu.

Pour que l'utilisateur voie exactement la police voulue, vous pouvez incorporer cette police dans le fichier SWF de votre application. L'incorporation des polices présente de nombreux avantages :

Le principal inconvénient des polices incorporées est l'augmentation de la taille du fichier de l'application.

La méthode exacte à utiliser pour incorporer un fichier de police dans le fichier SWF de l'application varie selon l'environnement de développement.

Une fois la police incorporée, il est possible de faire en sorte que l'objet TextField utilise la police correcte :

intégration d'une police dans Flash

L'outil de création Flash permet d'incorporer pratiquement toutes les polices TrueType et Postscript Type 1 susceptibles de figurer sur votre ordinateur.

Il existe plusieurs façons d'intégrer des polices dans une application Flash :

Pour plus de détails sur l'intégration de polices dans les applications Flash, consultez la section Polices intégrées pour des champs de texte dynamiques ou de saisie dans le guideUtilisation de Flash.

Contrôle de la netteté, de l'épaisseur et du lissage

Par défaut, Flash Player détermine les paramètres de contrôle d'affichage du texte (netteté, épaisseur et lissage) qui s'appliquent lorsque le texte change de taille et de couleur ou s'affiche sur différents arrière-plans. Dans certains cas, vous pouvez définir vos propres paramètres, par exemple si le texte est très petit ou très gros, ou s'il s'affiche sur plusieurs arrière-plans. La classe flash.text.TextRenderer et les classes associées telles que CSMSettings permettent de modifier les paramètres de Flash Player. Elles offrent un contrôle précis de la qualité d'affichage du texte incorporé. Pour plus d'informations sur les polices incorporées, consultez la section Utilisation de polices incorporées.

REMARQUE

 

La propriété flash.text.TextField.antiAliasType doit avoir la valeur AntiAliasType.ADVANCED (valeur par défaut) pour qu'il soit possible de définir la netteté, l'épaisseur ou la propriété gridFitType , ou d'utiliser la méthode TextRenderer.setAdvancedAntiAliasingTable() .

L'exemple suivant applique des propriétés personnalisées de modulation continue du trait (CSM) et de mise en forme au texte affiché, en utilisant la police incorporée myFont. Lorsque l'utilisateur clique sur le texte affiché, Flash Player applique ces paramètres personnalisés :

var format:TextFormat = new TextFormat();
format.color = 0x336699;
format.size = 48;
format.font = "myFont";

var myText:TextField = new TextField();
myText.embedFonts = true;
myText.autoSize = TextFieldAutoSize.LEFT;
myText.antiAliasType = AntiAliasType.ADVANCED;
myText.defaultTextFormat = format;
myText.selectable = false;
myText.mouseEnabled = true;
myText.text = "Hello World";
addChild(myText);
myText.addEventListener(MouseEvent.CLICK, clickHandler);

function clickHandler(event:Event):void
{
    var myAntiAliasSettings = new CSMSettings(48, 0.8, -0.8);
    var myAliasTable:Array = new Array(myAntiAliasSettings);
    TextRenderer.setAdvancedAntiAliasingTable("myFont", FontStyle.ITALIC, TextColorType.DARK_COLOR, myAliasTable);
}

Flash CS3

 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/main/00000234.html