IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

Chargement dynamique de police pour flash player 10


Sujet :

ActionScript 3

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Par défaut Chargement dynamique de police pour flash player 10
    Bonjour,

    Avec la nouvelle version du moteur de texte et son Framework pour le Flash Player 10, je n'arrive plus à charger dynamiquement des polices pour mes projets ActionScript (pas flex).
    Je précise que j'ai besoin de télécharger une police après la compilation de mon projet principal et à la demande. Pour Flash player 9 je procédais ainsi:

    .Je charge un swf contenant la police embarquée et le code suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    package {
    	import flash.display.Sprite;
    	import flash.text.Font;
     
    	public class FontA extends Sprite
    	{
    		public function FontA()
    		{
    			[Embed(source='C:/WINDOWS/Fonts/ARIAL.TTF', fontName='Arial')]  
    			var Arial:Class;
    			Font.registerFont(Arial);
    			trace("Arial LOADED");
    		}
    	}
    }
    .Je pouvais alors utiliser ma police sans problème dans un TextFormat:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var textFormat:TextFormat=new TextFormat();
    textFormat.font='Arial';
    Le code équivalent pour le TextLayout Framework de Flash Player 10 ne fonctionne pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var lTextLayoutFormat:TextLayoutFormat=new TextLayoutFormat();
    lTextLayoutFormat.fontLookup=FontLookup.EMBEDDED_CFF;
    lTextLayoutFormat.fontFamily='Arial';
    Le texte ne prend pas la police embarquée mais une police utilisateur par défaut.

    Quelqu'un a-t-il une solution ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 69
    Par défaut
    J’ai trouvé la réponse sur un autre forum. Pour ceux que ça intéresse (apparemment pas des masses).

    1. Créer un SWF à partir de flex builder 3 ou flash builder 4 avec le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [Embed(source='C:/WINDOWS/Fonts/ARIAL.TTF', fontName='Arial',mimeType = 'application/x-font',embedAsCFF="true", unicodeRange='U+05D0-U+05EA,U+05F0-U+05F2,U+05BE-U+05F4,U+05B0-U+05C4,U+0591-U+05AF')]  
    var Arial:Class;
    Font.registerFont(Arial);
    L’atttribut embedAsCFF permet de spécifier que nous utilisons le type de police defineFont4 obligatoire pour les polices embarquées dans le nouveau moteur de texte flash (flash.text.engine). TextField ((flash.text) fonctionne lui avec le defineFont3 (embedAsCFF="false")
    L’instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Font.registerFont(Arial)
    Permet d’enregistrer la font dans le manager de font de flash
    A noter au passage la possibilité de n’embarquer que certain caractères avec l’attribut unicodeRange

    2. Charger ce swf dans l’application flash et l’utiliser comme suit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var lTextLayoutFormat:TextLayoutFormat=new TextLayoutFormat();
    lTextLayoutFormat.fontLookup=FontLookup.EMBEDDED_CFF;
    lTextLayoutFormat.fontFamily='Arial';
    Arial étant le fontName de la font

    Voici un lien intéressant :
    http://blogs.adobe.com/tlf/2008/11/e...ing_using.html

    Salut,

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Une page test pour flash player
    Par koKoTis dans le forum Flash
    Réponses: 11
    Dernier message: 02/12/2006, 12h49
  2. [FLASH MX2004] Probleme assignation de police pour controle cree dynamiquement
    Par Demco dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 03/05/2006, 12h07
  3. Réponses: 2
    Dernier message: 25/10/2005, 18h03
  4. Réponses: 2
    Dernier message: 27/08/2004, 11h57
  5. [FLASH MX 2004]Chargement dynamique d'1 SWF ???
    Par Geilgestorm dans le forum Flash
    Réponses: 5
    Dernier message: 11/05/2004, 11h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo