Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

alessandro.connect

[Resolvido] flash + xml e caracteres especiais

Recommended Posts

Seguinte problema no xml

 

tenho um site em flash que pucha texto do xml

 

ai no xml ta desse jeito

<item id="1" label="Home" modelo="inicio.swf" height="500"/>
<item id="1" label="Coleção" modelo="colecao.swf" height="500"/>

 

Ai onde está coleção não aparece os caractéres "ç" e "ã", já tentei usar ¸ ã e aparece o escrito e não o símbolo.

Já tentei usar CDATA desse jeito

 

<item id="1" label="<![CDATA[Coleção]]>"/>

e desse

<![CDATA[<item id="1" label="Coleção"]]> <-- esse foi mais por desencargo de conciência. :S

 

Quem puder ajudar agradeço!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Embedding... (fonte) >> selecione: uppercase, lowercase, numerals, punctuation e Latin I.

 

Deve resolver.

 

 

Abs ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Embedding... (fonte) >> selecione: uppercase, lowercase, numerals, punctuation e Latin I.

 

Deve resolver.

 

 

Abs ;)

 

Então não rolo não Elektra ... aparece do mesmo jeito!

 

Conhece outra forma???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está usando fonte do sistema? ou alguma outra?

 

Informe o AS que está usando para o carregamento, se possível, crie um fla + xml de exemplo e poste o link.

 

Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual action você está usando para pegar esses dados?

 

ñ sou expert em as mas ta ai... obs: cod nao eh meu!

dynamic class XML_
{

   function XML_()
   {
   }

   static function getAtrybut(child, atr)
   {
       child.attributes[atr];
   }

   static function getArrayObject(date_, node_name)
   {
       delete counter;
       var counter = new Array();
       var __reg5 = new Array();
       var __reg8 = date_.childNodes.length;
       var __reg4 = 0;
       while (__reg4 < __reg8) 
       {
           var __reg1 = date_.childNodes[__reg4];
           if (node_name == __reg1.nodeName || node_name == undefined || node_name == 0) 
           {
               var __reg3 = counter.push(1) - 1;
               __reg5[__reg3] = new Object();
               for (var __reg7 in __reg1.attributes) 
               {
                   var __reg2 = __reg1.attributes[__reg7];
                   __reg5[__reg3][__reg7] = __reg2;
               }
               __reg5[__reg3].child = __reg1;
           }
           ++__reg4;
       }
       return __reg5;
   }

   static function child(target_, nod)
   {
       var __reg1 = 0;
       for (;;) 
       {
           if (__reg1 >= target_.childNodes.length) 
           {
               return;
           }
           var __reg2 = target_.childNodes[__reg1];
           if (__reg2.nodeName == nod) 
           {
               return __reg2;
           }
           ++__reg1;
       }
   }

}

 

dynamic class submenu_v2.mvcsubmenu.MenuItemView extends submenu_v2.mvc.AbstractView
{
   var __active;
   var __array;
   var __background;
   var __container;
   var __currentRol;
   var __old;
   var __spaceX;
   var _x;
   var attachMovie;
   var createEmptyMovieClip;
   var getModel;
   var rect;

   function MenuItemView()
   {
       super();
   }

   function defaultController(model)
   {
       return new submenu_v2.mvcsubmenu.MenuItemController(model);
   }

   function onCreateMenuItem()
   {
       this.create();
       this.createBackground();
   }

   function onResize()
   {
       this.createBackground();
   }

   function getMovieClip(nr_)
   {
       return this.__array[nr_];
   }

   function create()
   {
       var __reg4 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       this.__spaceX = __reg4.__spaceItem;
       this.__old = undefined;
       var __reg6 = __reg4.__menuItem;
       var __reg7 = __reg6.length;
       var __reg5 = undefined;
       var __reg8 = undefined;
       this.__container = this.createEmptyMovieClip("mc_container", 123456);
       this.__array = [];
       var __reg3 = 0;
       while (__reg3 < __reg7) 
       {
           if (__reg6[__reg3].visible != "false") 
           {
               var __reg2 = this.__container.attachMovie("_rowItem", "_rowItem_" + __reg3, __reg3);
               this.__array.push(__reg2);
               __reg2.selectedItem = __reg6[__reg3];
               __reg2.nr = __reg3;
               __reg2.t.autoSize = true;
               __reg2.t.text = __reg2.selectedItem.label;
               __reg2.t.textColor = __reg4.__textColorOut_Item;
               __reg2._x = __reg3 == 0 ? 0 : __reg5.getBounds(__reg5._parent).xMax + this.__spaceX;
               __reg2.onPress = Delegate2.create(this, this.onPressClip, __reg2);
               __reg2.onRollOver = Delegate2.create(this, this.onRollOverRow, __reg2);
               __reg2.onRollOut = Delegate2.create(this, this.onRollOutRow, __reg2);
               if (__reg3 == __reg4.__currentItem) 
               {
                   this.setActiv(__reg3);
                   __reg8 = __reg2;
               }
               __reg2.t.border = false;
               this.create_area(__reg2);
               this.create_rect(__reg2);
               __reg5 = __reg2;
           }
           ++__reg3;
       }
       if (__reg4.__align == "R") 
       {
           this.__container._x = 0 - this.__container._width - this.__spaceX / 2 - __reg4.__paddingItemH;
       }
       else 
       {
           this.__container._x = this.__spaceX / 2 + __reg4.__paddingItemH;
       }
       this.__container._y = __reg4.__heightItem - this.__container._height - 35;
       this.onRollOverEfect(__reg8);
   }

   function createBackground()
   {
       var __reg2 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       this.__background = this.attachMovie("_bck_menu_item", "_bck_menu_item_", 1);
       this.__background._width = __reg2.__width;
       this.__background._height = __reg2.__heightItem;
       NewColor.setColor(this.__background.background1.background2, __reg2.__backgroundColorMenuItem);
       this.__background.background1.background2._alpha = __reg2.__alphaBackgroundItem;
       var __reg4 = (Stage.width - ConfigurationSite.PAGE_WIDTH) / 2;
       this.__background._x = 0 - __reg4;
       if (__reg2.__align == "R") 
       {
           this.__background._x = 0 - __reg2.__width;
           this._x = __reg2.width;
       }
       else 
       {
           this._x = 0;
       }
       var __reg3 = this.createEmptyMovieClip("container_line", 4323);
       var __reg6 = __reg2.__width;
       var __reg5 = __reg2.__heightItem;
       __reg3.lineStyle(1, ConfigurationSite.COLOR_LINE.split(",")[0], ConfigurationSite.COLOR_LINE.split(",")[1]);
       __reg3.moveTo(0, __reg5);
       __reg3.lineTo(__reg6, __reg5);
       __reg3._x = 0 - __reg4;
   }

   function onPressClip(row)
   {
       var __reg2 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       __reg2.__currentItem = row.nr;
       __reg2.__currentSubItem = undefined;
       if (__reg2.__menuSubItem[__reg2.__currentItem] == undefined) 
       {
           __reg2.__currentSubItem = undefined;
       }
       __reg2.__target.__menuSubItem.onCreateMenuSubItem();
       __reg2.dispatchEvent({target: row, type: "onPressRow"});
   }

   function onPressRow(obj)
   {
       var __reg2 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       var __reg3 = __reg2.__currentItem;
       this.setActiv(__reg3);
   }

   function onRollOverRow(row)
   {
       var __reg2 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       var __reg6 = row.selectedItem;
       var __reg5 = __reg6.child;
       var __reg4 = XML_.getArrayObject(__reg5);
       __reg2.__target.__menuSubItem.__item = row;
       __reg2.__currentRollOver = row;
       __reg2.__menuSubItem = __reg4.length ? __reg4 : undefined;
       this.onRollOverEfect(row);
       __reg2.createMenuSubItem();
   }

   function updateActive()
   {
       var __reg4 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       for (var __reg3 in this.__container) 
       {
           var __reg2 = this.__container[__reg3];
           if (__reg2 != this.__active) 
           {
               this.onRollOutRow(__reg2);
           }
       }
   }

   function create_rect(row)
   {
       var __reg2 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       this.rect = row.area.duplicateMovieClip("mcRectangle", row.t.getDepth() - 1);
       row.rect = this.rect;
       NewColor.setColor(this.rect, __reg2.__rectangleRol);
       this.rect._alpha = __reg2.__rectangleAlpha;
       this.rect._yscale = 0;
   }

   function create_area(row)
   {
       var __reg4 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       var __reg2 = row.createEmptyMovieClip("mcArea", -7894654445);
       __reg2._alpha = 0;
       row.area = __reg2;
       __reg2._x = 0 - this.__spaceX;
       __reg2._y = row.t._y + row.t._height + 2.5;
       Drawing.rectangle(__reg2, 0, 0, row._width + this.__spaceX * 2, 0 - (row.t._height + 3), ["0xFFFFFF", 100]);
   }

   function onRollOverEfect(row)
   {
       this.updateActive();
       var __reg3 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       this.__currentRol = row;
       row.rect.tween("_yscale", 100, 0.5);
       row.t.stopTween();
       row.t.colorTo(__reg3.__textColorRol_Item, 0.5);
   }

   function onRollOutRow(row, war)
   {
       var __reg3 = submenu_v2.mvcsubmenu.SubMenuModel(this.getModel());
       if (row != this.__old || war == true) 
       {
           row.t.stopTween();
           row.t.colorTo(__reg3.__textColorOut_Item, 0.5);
           row.rect.tween("_yscale", 0, 0.5);
       }
   }

   function setActiv(nr_)
   {
       var __reg2 = this.__array[nr_];
       this.onRollOverEfect(__reg2);
       this.__active = __reg2;
       this.__old = this.__active;
       this.updateActive();
   }

}

 

acho q esses 2 que tao puchando o xml

 

 

ai o xml

 

<?xml version="1.0" encoding="UTF-8"?>
<menuPrimary id="1" url_config="xml/config-menu.xml">
<item id="5557" label="Home" template="home.swf" height="600"/>
<item id="5557" label="Serviços" template="servicos.swf" height="600"/> (ai onde aparece servuços não aparece o "Ç".
</menuPrimary>

 

ai nesse config-menu.xml contém só altura, largura, cores de fundo etc.

 

Da um help ai brother plz..

 

Está usando fonte do sistema? ou alguma outra?

 

Informe o AS que está usando para o carregamento, se possível, crie um fla + xml de exemplo e poste o link.

 

Abs

 

colei o as ai da um look

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você não respondeu se está usando fonte do sistema.

 

Experimente usar alguma fonte comum (arial, verdana) e fazer o embedding nas caixas de texto dinâmico.

 

 

 

Talvez a fonte tenha sido importada pelo action. Pelo que você postou não há como afirmar.

 

Se está usando algum template gringo é comum dar problema com fontes.

 

Eu uso AS3, sugiro observe as classes (leia o conteúdo) do seu package para ver se faz referência.

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, no as2 eu ja tive muitas vezes problemas com acentuação quando usava acentos em atributos. Eu solucionava tirando os dados de atributos e jogando pra um nó com CDATA, por exemplo, aqui você está usando atributos <teste valor="acentuação"/> dai você resgata usando no[indice].atributes.valor, eu passava isso para nó ficando assim <teste><![CDATA[acentuação]]></teste> dai ficaria no[indice].firstChild.nodeValue e ele dessa forma vai te dar o que tiver por lá com a acentuação.

 

No ritmo da Electra, antes de você xingar definitivamente a fonte, tente dar um trace do que você está jogando pro campo de texto, pois se no texto nã oestiver marcando a acentuação, você ja mata de ser problema de fonte. O que os antigos (como eu) usavam no tempo em que o action script era escrito com carvão nas cavernas usavam, era colocar o System.useCodepage = true; na primeira linha do código, isso muitas vezes resolvia problemas de acentuação e você pode tentar tambem.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, no as2 eu ja tive muitas vezes problemas com acentuação quando usava acentos em atributos. Eu solucionava tirando os dados de atributos e jogando pra um nó com CDATA, por exemplo, aqui você está usando atributos <teste valor="acentuação"/> dai você resgata usando no[indice].atributes.valor, eu passava isso para nó ficando assim <teste><![CDATA[acentuação]]></teste> dai ficaria no[indice].firstChild.nodeValue e ele dessa forma vai te dar o que tiver por lá com a acentuação.

 

No ritmo da Electra, antes de você xingar definitivamente a fonte, tente dar um trace do que você está jogando pro campo de texto, pois se no texto nã oestiver marcando a acentuação, você ja mata de ser problema de fonte. O que os antigos (como eu) usavam no tempo em que o action script era escrito com carvão nas cavernas usavam, era colocar o System.useCodepage = true; na primeira linha do código, isso muitas vezes resolvia problemas de acentuação e você pode tentar tambem.

 

 

Então o lance do System.useCodepage = true; já tentei ...

O lance do teoricamente funcionaria

mas <teste> <![CDATA[acentuação]]> </teste>

 

<teste valor="<![CDATA[acentuação]]>"> </teste>

 

seria dentro da chave e nao fora!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que os antigos (como eu) usavam no tempo em que o action script era escrito com carvão nas cavernas usavam, era colocar o System.useCodepage = true; na primeira linha do código, isso muitas vezes resolvia problemas de acentuação e você pode tentar tambem.

 

ahahaahhh ... :lol: ... ri muito aqui

 

tava fazendo falta um pouco de humor

 

 

mestre, essa valeu o dia ... :clap: ... show!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.