Modifier l'alpha d'un texte dynamique

Modifier l'alpha d'un texte dynamique - Flash/ActionScript - Programmation

Marsh Posté le 28-10-2004 à 08:47:54    

B'jour à tous,  
 
Voici un simple exemple qui va illustrer ma question :  
 

Code :
  1. _root.createEmptyMovieClip("monClip", 1);
  2. _root.monClip.createTextField("monTxt", 2, 10, 10, 150, 20);
  3. _root.monClip.monTxt.text = "Mon texte.";
  4. _root.monClip._alpha = 10;
  5. _root.monClip.monTxt._alpha = 10;
  6. trace(_root.monClip._alpha);
  7. trace(_root.monClip.monTxt._alpha);


 
 
La sortie nous montre 2 jolis "10". Le seul problème est que "mon texte" est drolement noir pour de l'alpha 10.  
Ma question est simple, comment faire pour que ça fonctionne?  
Si vous avez une réponse, je suis prenneur.  
 
Merci.

Reply

Marsh Posté le 28-10-2004 à 08:47:54   

Reply

Marsh Posté le 28-10-2004 à 09:30:25    

nenex75 a écrit :

B'jour à tous,  
 
Voici un simple exemple qui va illustrer ma question :  
 

Code :
  1. _root.createEmptyMovieClip("monClip", 1);
  2. _root.monClip.createTextField("monTxt", 2, 10, 10, 150, 20);
  3. _root.monClip.monTxt.text = "Mon texte.";
  4. _root.monClip._alpha = 10;
  5. _root.monClip.monTxt._alpha = 10;
  6. trace(_root.monClip._alpha);
  7. trace(_root.monClip.monTxt._alpha);


 
 
La sortie nous montre 2 jolis "10". Le seul problème est que "mon texte" est drolement noir pour de l'alpha 10.  
Ma question est simple, comment faire pour que ça fonctionne?  
Si vous avez une réponse, je suis prenneur.  
 
Merci.


 
salut,
 
tu dois utiliser une police intégrée et utiliser un format de charactère ... après tu fais ce que tu veux de ton clip (alpha, rotation, ...)
 
pour la fonte à intégrée :  
 
Biblio > Nouvelle police > tu lui donne un nom (nom qui te servira dans le TextFormat et choisi la fonte en question ds le menu derroulant > click droit sur ta fonte qui apparaot maintenant ds la biblio > liaison > exporter pour actionscript
 

Code :
  1. leStyle = new TextFormat();
  2. with (leStyle) {
  3. font = "arial";
  4. bold = false;
  5. size = "10";
  6. align = "left";
  7. color = "0xff0099";
  8. }
  9. a = _level0.createEmptyMovieClip("daClip", 70);
  10. with (a) {
  11. _x = 10;
  12. _y = 10;
  13. createTextField("field", 0, 0, 0, 100, 17);
  14. field.embedFonts = true;
  15. field.text = "Mon texte en alpha";
  16. field.setTextFormat(leStyle);
  17. _alpha = 50;
  18. }

Reply

Marsh Posté le 28-10-2004 à 11:09:31    

Merci zbang pour ta réponse, effectivement une fois la police inclu directement dans le swf, on peut interagir avec le texte comme on veut.
 
Cependant ça amène un secon problème : la taille à l'exportation. Il faut compter 50ko en plus (pour un verdana classique) ce qui relativement gros pour une si "petite" demande (un effet d'alpha).
 
Je suis donc passé par la méthode bidouille : un cache de la couleur du fond du texte dont je fais varier l'opacité. Ca reste suffisant pour ce que j'ai a en faire.
 
Et comme ça ua moins je dormirais moins bête ce soir. Merci donc

Reply

Marsh Posté le 28-10-2004 à 11:32:32    

nenex75 a écrit :

Merci zbang pour ta réponse, effectivement une fois la police inclu directement dans le swf, on peut interagir avec le texte comme on veut.
 
Cependant ça amène un secon problème : la taille à l'exportation. Il faut compter 50ko en plus (pour un verdana classique) ce qui relativement gros pour une si "petite" demande (un effet d'alpha).
 
Je suis donc passé par la méthode bidouille : un cache de la couleur du fond du texte dont je fais varier l'opacité. Ca reste suffisant pour ce que j'ai a en faire.
 
Et comme ça ua moins je dormirais moins bête ce soir. Merci donc


 
50 kilo??????????????
 
on doit pas avoir la même verdana :)
 
--> un swf vide sans font intégré pèse 29 bytes
--> un swf vide avec Verdana intégré pèse 16,7 KB (17.147 bytes)
 
pour moi la question ne se pose même pas ... à l'ère de l'ADSL ... 16 malheureux ko :) c'est franchement pas la mort et si tu cible des modem 28k ou v90 fait plutôt de l'html :)
 
pour ta manoeuvre ... je ne comprends pas bien  :heink:  tu masque ton champs? si c'est le cas tu devra de toute manière integrer ta fonte ...
 
a+

Reply

Marsh Posté le 28-10-2004 à 13:35:51    

En fait le pbm de départ était de faire varier l'alpha d'un texte. Donc plutot que d'intégrer une font, j'ai opté pour créer un rectangle qui se place par dessus le texte. Et c'est ce carré dont l'opacité varie, l'opération est invisible pour le visiteur et donne l'impression que le texte disparait/apparait.
 
Et 1ko au lieu de 17. Même si c'est pas la mort, le but est de limiter un maximum ces famaux ko.
 
Enfin bon comme j'ai dit plus haut tu m'auras appris quelque chose c'est déjà bcp ;)
 
Aller babaille, merci

Reply

Marsh Posté le 28-10-2004 à 14:26:16    

nenex75 a écrit :

En fait le pbm de départ était de faire varier l'alpha d'un texte. Donc plutot que d'intégrer une font, j'ai opté pour créer un rectangle qui se place par dessus le texte. Et c'est ce carré dont l'opacité varie, l'opération est invisible pour le visiteur et donne l'impression que le texte disparait/apparait.
 
Et 1ko au lieu de 17. Même si c'est pas la mort, le but est de limiter un maximum ces famaux ko.
 
Enfin bon comme j'ai dit plus haut tu m'auras appris quelque chose c'est déjà bcp ;)
 
Aller babaille, merci


 
 :jap: t'as raison ... pourquoi s'enmerder quand le resultat est le même ;)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed