Hello :) En fait en cherchant un peu on se rend compte que c'est un soucis (même un bug ou oubli de Adobe ??)
http://www.adobe.com/devnet/flash/quickstart/embedding_fonts/ (lire les commentaires) En gros la seule vraie solution est de passer par le MXMLC.exe pour compiler avec les bons glyphes... mince :( Faudrait que Adobe fixe cela dans Flash CS5 ! Pour ceux qui veulent tester en AS3 par exemple : Font.registerFont( Arial ) ; var fonts:Array = Font.enumerateFonts() ; var font:Font = fonts[1] as Font ; trace(font.hasGlyphs("Θ") ) ; var field:TextField = new TextField() ; field.autoSize = "left" ; field.embedFonts = true ; field.defaultTextFormat = new TextFormat("Arial", 12 ) ; field.text = "alpha:ΘΓΔΖφχ" ; addChild( field ) ; Avec Arial le nom de ma classe dans la bibliotèque... suffit de virer le embedFonts = true en embedFonts = false pour voir que pourtant tout est ok.. seul le problème de glyphe cause vraiment problème car on reste en latin1 lors de la compilation. EKA+ :) Le 7 décembre 2009 14:50, Cedric Muller <[email protected]> a écrit : > > Hello, > > Je n'arrive pas à répondre concrètement à ta question, par contre > j'ai été confronté au même problème lorsqu'on m'a demandé de faire un > site en 7 langues, dont l'arabe, le russe, le coréen, le chinois :) > > Je n'ai pas réussi à obtenir quelque chose de correct avec ma > technique du FLA vide et de la font intégrée à la Bibliothèque > (Library), mais si je me souviens bien c'était principalement lié à > la langue arabe, étant lue de droite à gauche. > > Bref, j'ai solutionné mon problème en utilisant le textlayout > framework, basé sur le nouveau textEngine du Flash Player 10. (Le > text layout framework reste optionnel, tu pourrais très bien te > lancer directement en utilisant le nouveau text engine). > > <http://labs.adobe.com/technologies/textlayout/> > > Niveau préparation, rien ne change, ne serait-ce que je n'ai plus > besoin de créer mon FLA vide, tout se faisant de manière ultime > depuis Flex Builder, en une petite classe: > > package com.mybidoom.fonts > { > import flash.text.Font; > > public class AFont extends Font > { > [Embed(source="/path/to/fonts/AFont.ttf", > fontFamily="AFont", > cff="true")] > > public static const NAME:String = "AFont"; > > public function AFont() > { > super(); > } > } > } > > > ensuite, tu pointes sur AFont.NAME pour utiliser la font au niveau du > texte: > > private function createTextLine(someText:String):void > { > var bounds:Rectangle = new Rectangle(10, 10, this.width, > this.height); > > var paragraphFormat:ParagraphFormat = new ParagraphFormat(); > paragraphFormat.direction = Direction.LTR; > > var characterFormat:CharacterFormat = new CharacterFormat(); > characterFormat.fontSize = 18; > characterFormat.fontFamily = AFont.NAME; > characterFormat.fontLookup = > flash.text.engine.FontLookup.EMBEDDED_CFF; > characterFormat.renderingMode = flash.text.engine.RenderingMode.CFF; > > TextLineFactory.createTextLinesFromString(addTextLineToContainer, > someText, bounds, characterFormat, paragraphFormat); > } > > private function addTextLineToContainer > (textLine:flash.text.engine.TextLine):void > { > this.addChild(textLine); > } > > > createTextLine("FCNG is a nice place for the week-end!"); > > > J'espère que cela puisse aider :) > > ++ > Cedric > > > > > Bonjour à tous, > > > > Je rencontre un soucis avec l'inclusion de glyphes dans flash, > > voici ce qui me tarabusque :) : > > > > 1 - créer un fla vide > > 2 - créer un symbole de police dans la library (y mettre de l'Arial ou > > autre police gérant l'unicode) > > 3 - mettre exporter pour actionscript dans le panneau linkage > > 4 - créer un champs de texte dynamique sur la scène, le paramétrer > > avec l'identifiant de la police crée et intégrer les caractères (un > > embed all sera même plus parlant pour démontrer le problème) > > 5 - copier coller des caractères grecs dans le (en provenance de la > > table des caractères de windows par exemple) > > 6 - compiler le swf > > > > Le résultat est un champs de texte vide ou du moins ne comportant pas > > les caractères grecs (si l'on mets des caractères "classiques" ceux-ci > > sont par contre bien exportés). En générant un rapport de taille on > > voit en effet que le compilo n'a pas inclus la plage de caractères > > demandés. > > > > Ce comportement ne se produit pas lorsqu'il n'y a pas d'export coché > > dans le panneau linkage. > > J'ai pu testé et reproduire ce comportement sous flash 8 et sous flash > > CS3 (sur fichiers de type AS2 et AS3). > > > > Mon hypothèse serait que flash dans ce cas précis à l'air de se baser > > sur le codepage du système pour les inclusions ?? toutefois je ne peux > > pas le vérifier de mon poste du boulot n'ayant pas les droits > > d'admin : > > ( > > > > Je me demandais si quelqu'un d'autre avait pu rencontrer ce problème > > voire le solutionner :) > > > > François. > > > > > > > > --~--~---------~--~----~------------~-------~--~----~ Vous avez reçu ce message, car vous êtes abonné au groupe Groupe "FCNG" de Google Groupes. Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour résilier votre abonnement à ce groupe, envoyez un e-mail à l'adresse [email protected] Pour afficher d'autres options, visitez ce groupe à l'adresse http://groups.google.com/group/fcng?hl=fr -~----------~----~----~----~------~----~------~--~---
