flash, xml и кодировка @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 8 ] 
*   Список форумов / Технологии изображения / Flash » ответить » создать топик « | »
Автор Сообщение
sobaka
участник
11
Сообщения: 1474
Зарегистрирован: 03.07.01
Откуда: Vilnius, Lietuva
Заголовок сообщения: flash, xml и кодировка
Сообщение Добавлено: 25 Июнь 2007, 22:41:06 
Коллеги,

есть проблема. Есть флеш-мувик, в который подгружается внешний xml-файл с текстом. Сделаео все в Flash MX 2004. Так вот, текст кириллицей не отбражается. xml-файл сохранен в utf-8

Как решить эту проблему?

_________________
She brings the rain
ulitin kirill
постоянный участник
92
Сообщения: 2844
Зарегистрирован: 17.07.05
Откуда: Санкт-Петербург
Сообщение Добавлено: 25 Июнь 2007, 23:05:25 
Так, а с латиницей все в порядке, то есть все рабочее? Попробуйте заново пересохранить... У меня подобный глюк был... Ну вобщем танцы с бубнами.

_________________
хочу лето, очень.
Мигель Муж.
участник
75
Сообщения: 1453
Зарегистрирован: 09.01.04
Откуда: http://design-cafe.ru
Сообщение Добавлено: 25 Июнь 2007, 23:26:09 
А выбранный шрифт в принципе может кириллицу отображать?
DePavel
соучастник
1
Сообщения: 459
Зарегистрирован: 31.10.05
Сообщение Добавлено: 26 Июнь 2007, 00:04:15 
Короче в поле которое грузиш загрузи кириллицу...там в свойствах этого текстового поля кнопочка должна быть...в 8-ке это Embed и там выбери Cyrillic и окей нажми...также подрубай символы и тд...

Все должно пахать.

_________________
http://www.фрии-лансе.ru/users/PavelD/
sobaka
участник
11
Сообщения: 1474
Зарегистрирован: 03.07.01
Откуда: Vilnius, Lietuva
Сообщение Добавлено: 26 Июнь 2007, 01:29:32 
С латиницей все ок. Пересохранять тоже пробовал, естественно. Шрифт выбран по дефолту, то есть системный. А вот насчет этого:


DePavel писал(а):
Короче в поле которое грузиш загрузи кириллицу...там в свойствах этого текстового поля кнопочка должна быть...в 8-ке это Embed и там выбери Cyrillic и окей нажми...также подрубай символы и тд...

Все должно пахать.



поля нет, в том-то и дело. Все параметры заданы в ActionScript и вынесены в xml. То есть конструкция такая:

Код:

menu = new XML();
menu.load("main_menu.xml");
menu.ignoreWhite = 1;
menu.onLoad = function (){
parseit();};



А перед загрузкой xml стоит

Код:
system.useCodepage = true;


Но его присутствие или отсутствие никак ни на что не влияет

_________________
She brings the rain


Последний раз редактировалось sobaka 26 Июнь 2007, 01:33:36, всего редактировалось 1 раз.
sobaka
участник
11
Сообщения: 1474
Зарегистрирован: 03.07.01
Откуда: Vilnius, Lietuva
Сообщение Добавлено: 26 Июнь 2007, 01:32:00 
Полный AS такой:

Код:


function parseit(){menu.parseXML();createMenuObj(menu, this);}function chiuri(){this.tgsc = 30;this.closing = 1;}function loginOrReg(){};function createMenuObj(xmldoc, tgt){var __reg3 = 0;for (;;) {if (__reg3 >= xmldoc.childNodes.length) {return;}var mylev = mylev + 1;var myx = plcHld._x;var myy = 22 * __reg3 + 22;var __reg2 = xmldoc.childNodes[__reg3];var nodename = __reg2.attributes.sect;if (nodename == "") {tgt.attachMovie("tempor", nodename, mylev);}else {tgt.attachMovie("mChld", nodename, mylev);}var __reg1 = tgt[nodename];var contType = __reg2.attributes.ctype;var lbl = unescape(__reg2.attributes.winLabel);var sub = __reg2.attributes.mType;var link = __reg2.attributes.link;var wdt = __reg2.attributes.wdt;var hgt = __reg2.attributes.hgt;var winId = __reg2.attributes.id;var openr = __reg2.attributes.opener;var placeRef = __reg2.attributes.myref;var tmb = __reg2.attributes.tmb;var area = __reg2.attributes.area;if (sub == "sub" && area != "fan") {__reg1.bkg._visible = 0;}if (sub == "root" || sub == "fth") {__reg1.arrw._visible = 1;}else {__reg1.arrw._visible = 0;}if (nodename != "root") {__reg1._visible = 0;}__reg1.myroot = myroot;__reg1.area = area;__reg1.tmb = tmb;__reg1.sub = sub;__reg1.contType = contType;__reg1._x = 0;__reg1._y = 0;if (sub == "root") {__reg1._x = Stage.width - (Stage.width - 750) / 2 - 127;__reg1._y = 0 - (Stage.height - 550) / 2 + 2 + 1;}__reg1.opener = openr;__reg1.stx = myx;__reg1.sty = myy;__reg1.coe = 3;__reg1.label = "<b>" + lbl + "</b>";__reg1.id = __reg3;__reg1.link = link;__reg1.winId = winId;__reg1._name = "btn" + __reg3;__reg1.wdt = wdt;__reg1.hgt = hgt;__reg1.myref = placeRef;newtgt = __reg1;createMenuObj(__reg2, newtgt);++__reg3;}}function loadCnt(tgref, wdt, hgt, swfname, id, winlabel, tmb, culore, typo){var __reg2 = wdt;var __reg3 = tgref;var __reg1 = id;var __local0;if (typeof winds["wind" + __reg1] == "movieclip") {winds["wind" + __reg1].swapDepths(500);__local0 = null;}else {++contLevel;if (contLevel > 200) {contLevel = 100;}winds.attachMovie("std_win", "wind" + __reg1, contLevel);mywind = winds["wind" + __reg1];mywind.mycolor = culore;if (winLabel.substring(0, 3) == "Ph.") {mywind.attachMovie("mashcara", "mask", 203);mywind.mask.initMe(__reg2, hgt);mywind.txt.text = "ciao bello";}mywind._x = winds._xmouse;mywind._y = winds._ymouse;mywind.tmb = tmb;mywind.bkg._xscale = mywind.bkg._yscale = 6;mywind.tgx = this[__reg3]._x;mywind.tgy = this[__reg3]._y;if (__reg3 == "lowContent") {mywind.tgx = this[__reg3]._x + __reg2 / 2;}mywind.createEmptyMovieClip("swfCont", 1);mywind.swfCont._x = 0 - __reg2 / 2;mywind.swfCont._y = 0 - hgt / 2;mywind.tgWd = __reg2;mywind.tgHg = hgt;mywind.content = __reg1;mywind.coe = 3;mywind.whoAmI = "wind" + __reg1;mywind.myroot = winds;mywind.link = swfname;mywind.typo = typo;mywind._visible = 0;mywind.place = 1;mywind.active = 1;mywind.attachMovie("tit_txt", "title", 99);mywind.swapDepths(500);mytit = mywind.title;mytit.bkg.mycolor = culore;mytit.title = "<b>" + winLabel + "</b>";mytit._x = 0 - mywind.tgWd / 2;mytit._y = 0 - mywind.tgHg / 2 - mytit._height - 1;mytit.bkg._xscale = mytit.lab_but._xscale = mywind.tgWd;mytit._visible = 0;__local0 = undefined;}__reg0 = __local0;__reg3 = undefined;__reg2 = undefined;__reg1 = undefined;return __reg0;}menu = new XML();menu.load("main_menu.xml");menu.ignoreWhite = 1;menu.onLoad = function (){parseit();};myroot = this;msk = function (){};msk.prototype = new MovieClip();msk.prototype.onLoad = function (){};msk.prototype.onEnterFrame = function (){this;if (this.reached == this.cntr) {this.unloadMovie();}if (this.maskActive) {++this.startN;if (this.startN <= this.cntr) {this["cel" + this.startN].go = 1;return;}this.maskActive = 0;}};msk.prototype.run = function (){this;this._parent.swfCont.setMask(this);this._parent.swfCont._visible = 1;this.reached = 0;this.maskActive = 1;this.startN = 0;};msk.prototype.initMe = function (wd, hg){this;this._x = 0 - wd / 2;this._y = 0 - hg / 2;this.wdt = wd;this.hgt = hg;this._visible = 0;this._parent.swfCont._visible = 0;this.horN = int(this.wdt / 50 + 1);this.verN = int(this.hgt / 50 + 1);this.casex = this.wdt / 2;this.cntr = int(this.horN * this.verN);var rws = 1;while (rws <= this.verN) {var __reg3 = this.horN;while (__reg3 >= 1) {++this.indx;this.attachMovie("cell", "cel" + this.indx, this.indx);var __reg1 = this["cel" + this.indx];__reg1._xscale = __reg1._yscale = __reg1.stSc = random(10);__reg1._rotation = __reg1.str = random(300);__reg1._alpha = __reg1.stalpha = 0;__reg1._x = __reg1.stx = this.casex;__reg1._y = __reg1.sty = this.hgt / 2;__reg1.tgalpha = 100;__reg1.tgr = 0;__reg1.tgSc = 100;__reg1.tgx = (__reg3 - 1) * 50;__reg1.tgy = (rws - 1) * 50;__reg1.coe = 3;--__reg3;}++rws;}this._visible = 0;};Object.registerClass("mashcara", msk);windB = function (){};windB.prototype = new MovieClip();windB.prototype.closeMe = function (){this.tgsc = 30;this.closing = 1;};windB.prototype.onLoad = function (){this;if (this.mycolor != null) {this.clr = new Color(this.bkg);this.clr.setRGB(parseInt(this.mycolor, 16));}};windB.prototype.onEnterFrame = function (){this;this.dpt = this.getDepth();if (this.dpt >= 499) {if (this.typo == "video") {this._root.radio.stopAudio();}this.swfCont._visible = 1;this._alpha = 100;}else {if (this.typo == "video") {this.tgsc = 30;this.closing = 1;}if (this.typo == "photo") {this.tgsc = 30;this.closing = 1;}if (!this.tmb) {this._alpha = 30;}}if (this.closing) {this.dx = (this.tgsc - getProperty("", _xscale)) / this.coe;this.dy = (this.tgsc - getProperty("", _yscale)) / this.coe;this._xscale = this._xscale + this.dx;this._yscale = this._yscale + this.dy;if (Math.round(this._xscale) == this.tgsc && Math.round(this._yscale) == this.tgsc) {this._name = "yo";if (this.typo == "video") {_root.radio.restartAudio();}this.myroot.unloadit(this.getDepth());}}if (this.place) {this._visible = 1;this.dx = (this.tgx - this._x) / this.coe;this.dy = (this.tgy - this._y) / this.coe;this._x = this._x + this.dx;this._y = this._y + this.dy;if (Math.round(this._y) == this.tgy && Math.round(this._x) == this.tgx) {this._x = Math.round(this.tgx);this._y = Math.round(this.tgy);this.place = 0;this.scale = 1;}}if (this.scale) {this.dy = (this.tgHg - this.bkg._yscale) / this.coe;this.bkg._yscale = this.bkg._yscale + this.dy;if (Math.round(this.bkg._yscale) == this.tgHg) {this.bkg._yscale = Math.round(this.tgHg);this.scale = 0;this.scale2 = 1;}}if (this.scale2) {this.dx = (this.tgWd - this.bkg._xscale) / this.coe;this.bkg._xscale = this.bkg._xscale + this.dx;if (Math.round(this.bkg._xscale) == this.tgWd) {this.bkg._xscale = Math.round(this.tgWd);this.scale2 = 0;this.title._visible = 1;this.wClose._y = this.title._y + 6;this.wClose._x = this.title._x + this.title.bkg._xscale - this.wclose._width - 5;this.wClose._visible = 1;this.active = 0;this.attachMovie("buttone_finto", "butF", 9);this.butf._x = 0 - this.tgwd / 2;this.butf._y = this.tgHg / 2;this.butf._width = this._width;this.butf._height = this._height;this.butf.useHandCursor = 0;this.butf.onPress = function (){this._parent.swapDepths(500);};this.butf._alpha = 30;this.butf.useHandCursor = 0;this.butf._alpha = 0;this.doLoadStuff();}}};windB.prototype.doLoadStuff = function (){this;this.swfCont.swapDepths(10);loadMovie(this.link, this.swfCont);myldr = this.ldng;var hgt = this.myldr._height;this.attachMovie("loading", "ldng", 200);};Object.registerClass("std_win", windB);ldr = function (){};ldr.prototype = new MovieClip();ldr.prototype.onLoad = function (){this;this._x = 0 - Math.round(this._width / 2);this._y = 0 - Math.round(this._height / 2);this.maxim = 25;this.fact = 100 / this.maxim;this.mycolor = this._parent.mycolor;this.fact = 50;this.r = parseInt(this.mycolor.substring(0, 2), 16) * this.fact / 100;this.g = parseInt(this.mycolor.substring(2, 4), 16) * this.fact / 100;this.b = parseInt(this.mycolor.substring(4, 6), 16) * this.fact / 100;this.mytrn = {ra: 100 - this.fact, ga: 100 - this.fact, ba: 100 - this.fact, rb: this.r, gb: this.g, bb: this.b, aa: 100, ab: 255};this.clr = new Color(this);this.clr.setTransform(this.mytrn);};ldr.prototype.onEnterFrame = function (){this;this.onMouseUp = function (){};++this.cnt;this.ldd = Math.round(this._parent.swfCont.getBytesLoaded() / 1000);this.tot = Math.round(this._parent.swfCont.getBytesTotal() / 1000);this.perc = Math.round(this.ldd / this.tot * 100);if (this.perc.toString() == "NaN") {this.perc = 0;}this.percAddStr_1 = "<font color=\'#ffffff\'>";this.percAddStr_2 = "</font>";this.perc_txt = this.percAddStr_1 + ("loaded " + this.perc + "% of " + Math.round(this._parent.swfCont.getBytesTotal() / 1000) + " KB") + this.percAddStr_2;this.ldrBar._xscale = this.perc;if (this.perc == 100) {this._parent.mask.run();this.unloadMovie();}};Object.registerClass("loading", ldr);contLevel = 100;stop();

_________________
She brings the rain
ulitin kirill
постоянный участник
92
Сообщения: 2844
Зарегистрирован: 17.07.05
Откуда: Санкт-Петербург
Сообщение Добавлено: 26 Июнь 2007, 08:00:32 
И зачем это то стоит?????
Код:
system.useCodepage = true;


Данный параметр при тру использует дефолтную кодировку системы, так что смысла сохранению в утф при использовании данной команды нет! Утф используеться в первую очередь что бы везде все работало. С систем кодепэйдж скажем кириллица на забугорной системе не будет отображаться.

_________________
хочу лето, очень.
sobaka
участник
11
Сообщения: 1474
Зарегистрирован: 03.07.01
Откуда: Vilnius, Lietuva
Сообщение Добавлено: 26 Июнь 2007, 11:57:13 
ulitin kirill, вы совершенно правы. Пошаманив без этого кусочка кода все получилось. Всем огромное спасибо!

_________________
She brings the rain
*   Список форумов / Технологии изображения / Flash « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 8 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100