Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3066 connectés 

  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  satanée apostrophe !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

satanée apostrophe !

n°1480734
freed102
Arayashiki
Posté le 23-11-2006 à 15:23:34  profilanswer
 

bon alors j'en ai marre de cet apostrophe qui se transforme sans cesse en "&apos" dans flash...
 
j'ai donc des textfields dynamiques, avec des fichiers xml, j'ai fait un embedFonts avec un setNewTextFormat pour les styles... jusque là tout est parfait...
sauf ce satané apostrophe qui n'apparait pas.. obligé de transformer mon champ en champ HTML et du coup... n'accepte plus mes setTextFormat...
 
que faire ???
 
Merci !!
 
Freed

mood
Publicité
Posté le 23-11-2006 à 15:23:34  profilanswer
 

n°1480750
Zedlefou
In cabbage we trust !
Posté le 23-11-2006 à 15:40:45  profilanswer
 

normalement, le fait de passer en html ne change rien au setTextFormat.
Pour les apostrophes, je regarderais plutot du côté de ton XML.
D'ou viens-t-il ? A quel format de caractére est-il enregistré etc ...
Post un peu de code ou ton xml (ou les 2) pour voir.

n°1480903
freed102
Arayashiki
Posté le 23-11-2006 à 17:30:00  profilanswer
 

j'ai essayé les trois formats de XML, (unicode, ansi et utf-8), le fichier XML est saisi à la main avec notepad, il est interpreté dans flash par la methode classique, mais à chaque fois mes apostrophes deviennent des &apos, j'ai reussi à virer mes &apos avec une fonction bidon que j'ai nommé unhtmlentites .. mais je vais surement etre confroné au même probleme avec d'autres caractères spéciaux.. ce qui est etrange c'est que les accents sont bien interpretés.. c juste l'apostrophe et le & par exemple
 

Code :
  1. function unhtmlentities(str)
  2. {
  3. str = String(str);
  4. if(str.indexOf("'" ) != -1) {
  5. strArray = str.split("'" );
  6. newStr = strArray.join("\'" );
  7. return newStr;
  8. }
  9. }


 
voici mon xml
 

Code :
  1. <?xml version="1.0" encoding="iso-8859-1"?>
  2. <home>
  3. <vignette>
  4. <icone>e_img/diaporama/vignettes/01.jpg</icone>
  5. <photo>e_img/diaporama/photos/01.jpg</photo>
  6. <prenom>Channa</prenom>
  7. <pays>Cambodge</pays>
  8. <titre>L'enfant du cambodge</titre>
  9. <texte>blablabla</texte>
  10. </vignette>
  11. <vignette>
  12. <icone>e_img/diaporama/vignettes/05.jpg</icone>
  13. <photo>e_img/diaporama/photos/05.jpg</photo>
  14. <prenom>Maria</prenom>
  15. <pays>Brésil</pays>
  16. <titre>L'enfant du Brésil</titre>
  17. <texte>ici le texte1</texte>
  18. </vignette>
  19. <vignette>
  20. <icone>e_img/diaporama/vignettes/02.jpg</icone>
  21. <photo>e_img/diaporama/photos/02.jpg</photo>
  22. <prenom>Malick</prenom>
  23. <pays>Burkina Faso</pays>
  24. <titre>L'enfant du Burkina Faso</titre>
  25. <texte>ici le texte2</texte>
  26. </vignette>
  27. <vignette>
  28. <icone>e_img/diaporama/vignettes/03.jpg</icone>
  29. <photo>e_img/diaporama/photos/03.jpg</photo>
  30. <prenom>Adrian</prenom>
  31. <pays>Roumanie</pays>
  32. <titre>L'enfant de Roumanie</titre>
  33. <texte>ici le texte3</texte>
  34. </vignette>
  35. <vignette>
  36. <icone>e_img/diaporama/vignettes/04.jpg</icone>
  37. <photo>e_img/diaporama/photos/04.jpg</photo>
  38. <prenom>Hala</prenom>
  39. <pays>Liban</pays>
  40. <titre>L'enfant du Liban</titre>
  41. <texte>ici le texte4</texte>
  42. </vignette>
  43. </home>


Message édité par freed102 le 23-11-2006 à 17:30:57
n°1480914
Zedlefou
In cabbage we trust !
Posté le 23-11-2006 à 17:41:37  profilanswer
 

notepad = pas bien !
D'abord trouve toi un éditeur de texte qui puisse enregistrer ton fichier en UTF-8 et ensuite met <?xml version="1.0" encoding="UTF-8" ?> et non pas iso.
Apres fait des test en mettant ton textField en HTML ou non.
Ca devrait marcher

n°1480928
freed102
Arayashiki
Posté le 23-11-2006 à 17:57:11  profilanswer
 

pour info : Notepad sait enregistrer en utf-8
 
pour savoir un peu plus :
http://www.freedfromparis.com/temp/24heures/
 
le xml :
http://www.freedfromparis.com/temp [...] l/home.xml
 
un et peu de code :
 

Code :
  1. txtformat_prenom= new TextFormat();
  2. txtformat_prenom.size = 14;
  3. txtformat_prenom.font = "Verdana bold";
  4. txtformat_prenom.color = 0xBC0006;
  5. txtformat_loader= new TextFormat();
  6. txtformat_loader.size = 17;
  7. txtformat_loader.font = "Verdana bold";
  8. txtformat_loader.color = 0xBC0006;
  9. [...]
  10. function newHomeXML(fichier)
  11. {
  12. _root.homeXML = new XML();
  13. _root.homeXML.ignoreWhite=true;
  14. _root.homeXML.onLoad=_root.extractData;
  15. _root.homeXML.load(fichier);
  16. //trace(fichier);
  17. }
  18. function extractData(success)
  19. {
  20. vign=_root.homeXML.firstChild.childNodes;
  21. _root.idHome=random(vign.length-1);
  22. for(i=0;i<vign.length;i++)
  23. {
  24.  trace(vign[i].childNodes[0].lastChild)
  25.  _root["vignette"+(i+1)].MCvignette.loadMovie(basechemin+vign[i].childNodes[0].lastChild)
  26.  _root["vignette"+(i+1)].MCtextes.prenom.embedFonts=true;
  27.  _root["vignette"+(i+1)].MCtextes.prenom.setNewTextFormat(_root.txtformat_prenom);
  28.  _root["vignette"+(i+1)].MCtextes.prenom.text=vign[i].childNodes[2].lastChild;
  29.  _root["vignette"+(i+1)].MCtextes.pays.embedFonts=true;
  30.  _root["vignette"+(i+1)].MCtextes.pays.setNewTextFormat(_root.txtformat_pays);
  31.  _root["vignette"+(i+1)].MCtextes.pays.text=vign[i].childNodes[3].lastChild;
  32.  if(i==_root.idHome)
  33.  {
  34.  var photo:String=vign[i].childNodes[1].lastChild;
  35.  loadInClip(MCinfos.MCPhoto,basechemin+photo)
  36.  //MCinfos.titre.html=true;
  37.  MCinfos.titre.embedFonts=true;
  38.  MCinfos.titre.setNewTextFormat(_root.txtformat_titre);
  39.  MCinfos.titre.text=unhtmlentities(vign[i].childNodes[4].lastChild);
  40.  MCinfos.texte.embedFonts=true;
  41.  MCinfos.texte.setNewTextFormat(_root.txtformat_texte);
  42.  MCinfos.texte.text=unhtmlentities(vign[i].childNodes[5].lastChild);
  43.  }
  44.  //trace(_root["vignette"+(i+1)].MCvignette)
  45. }
  46. }
  47. //MCinfos.texte.htmlText=basechemin+"e_xml/home.xml";
  48. newHomeXML(basechemin+"e_xml/home.xml" );

n°1480960
Zedlefou
In cabbage we trust !
Posté le 23-11-2006 à 18:51:50  profilanswer
 

Alors déjà ton xml me donne ça et c'est pas bon signe :
http://zedlefou.free.fr/img/xml.gif
Essaie de le refaire ou fait des test avec un fichier nouveau.
 
Mea coulpa pour le bloc note, je savais pas.
 
En tout cas je pense que ça vient de ton fichier, pas de ton code. Au fait, je suis pas sur que le embed est très utile pour du verdana.
 
Il pése combien ton swf ??

n°1482322
freed102
Arayashiki
Posté le 27-11-2006 à 14:48:21  profilanswer
 

j'encapsule la fonte pour avoir le lissage de la police, le fichier pese 177ko tout mouillé.. c pas énorme... j'ai allégé en utilisant un bibliotheque partagée (je viens d'en découvrir le pouvoir... c'est tres tres interessant !)
 
J'ai toujours pas résolu ce probleme de caractères, l'erreur XML est surement due au fait que je ne mets pas les caractères spéciaux XML mais flash n'interprete pas les caracteres si le textField n'est pas en HTML, le probleme c'est que si je mets du HTML, j'ai l'impression que la police déconne un peu (genre je lui demande du gras dans mon textformat.. et il ne m'en mets pas !.. même avec les balises <b></b> )et j'ai aps envie d'utiliser les CSS pour l'instant sur ce projet


Message édité par freed102 le 27-11-2006 à 14:49:12
n°1482371
Zedlefou
In cabbage we trust !
Posté le 27-11-2006 à 15:49:26  profilanswer
 

Ah mais attend. J'aavais zappé un truc dans ton code :
_root["vignette"+(i+1)].MCtextes.pays.text=vign[i].childNodes[3].lastChild;
 
Si tu veux que ton texte soit en HTML faut pas mettre ça, mais plutot :        
_root["vignette"+(i+1)].MCtextes.pays.html = true;
_root["vignette"+(i+1)].MCtextes.pays.htmlText=vign[i].childNodes[3].lastChild;

n°1482374
freed102
Arayashiki
Posté le 27-11-2006 à 15:51:40  profilanswer
 

oui mais ça je le sais ! c ce que j'ai fait pour tester ! mais mes champs ne prennent plus en compte les textFormat quand mes textfields sont en html

n°1482406
Zedlefou
In cabbage we trust !
Posté le 27-11-2006 à 16:22:50  profilanswer
 

Normalement ça change rien pourtant
 :heink: Quel version de flash ?

mood
Publicité
Posté le 27-11-2006 à 16:22:50  profilanswer
 

n°1482423
freed102
Arayashiki
Posté le 27-11-2006 à 16:33:49  profilanswer
 

8.0 :(

n°1482820
freed102
Arayashiki
Posté le 28-11-2006 à 10:10:21  profilanswer
 

maintenant j'ai un probleme de retour chariot ! <br /> et \n ne marchent pas si je mets pas un textField en HTML... que faire ?

n°1482980
craps_youp​la
Posté le 28-11-2006 à 13:39:55  profilanswer
 

utilise des CDATA ...

n°1482984
freed102
Arayashiki
Posté le 28-11-2006 à 13:42:54  profilanswer
 

j'ai tenté.. mais ça ne m'a pas vraiment aidé !.. bref j'ai évité les retours à la ligne et ça devrait aller !

n°1482985
craps_youp​la
Posté le 28-11-2006 à 13:43:57  profilanswer
 

utilise vriament des CDATA, je t'assure, c'est comme ça qu'on fait ...

n°1482991
freed102
Arayashiki
Posté le 28-11-2006 à 13:50:26  profilanswer
 

oké !! marchi !


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Flash/ActionScript

  satanée apostrophe !

 

Sujets relatifs
[PHP] [Résolu]Pb apostrophe sous windows et pas sous linux[RESOLU] Comment reconnaître un apostrophe???
Apostrophe dans un champ de formulairesqlite apostrophe
apostrophe dans recherche vbaInsertion SAGE par ODBC pb apostrophe
probleme d'apostrophe flash/phpapostrophe sous oracle
apostrophe dans SQLAuthoriser l'apostrophe?
Plus de sujets relatifs à : satanée apostrophe !


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)