Problém s diakritikou ve FLASHové šabloňě
Dobrý den, chtěl bych Vás poprosit o radu. Zakoupil jsem flashovou šablonu kde mi nefunguje diakritika, technická podpora mi není schopna pomoci. Na různých místech jsem dostával rady o změně fontů, přidat znaky pomocí embed, nastavit utf-8, ale vše marné, budu vděčný za jakoukoliv radu.
edituji to v adobe flash cs4, os 7, aplikace svf. se odkazuje na .xml soubor který obsahuje text, uvažoval jsem že bych ten text napsal natvrdo do svf souboru, ale nevím jak to upravit aby to pořád netahalo dada z main.xml
Je v tom XML uveden hned na začátku Encoding? (např. neob třeba )
A dále, je ten soubor opravdu uložen v tom daným kódu?
(například, pokud je kódování zvoleno utf-8, musí být soubor skutečně uložen jako utf-8, ne jako ANSI, ne jako UNICODE - jak jde zvolit např. v Notepadu, ale i v jiných editorech; a písmena samozřejmě musí být vložena v odpovídajícím kódování, takže nelze např. editovat soubor v notepadu, uložit ho jako ANSI, nastavit ?xml encoding UTF-8 a myslet si, že to bude fungovat, protože skutečný kódování znaků bude stále win-1250).
Jako nejjednodušší bych doporučil pokusit se použít kódování Windows - nastavit do XML jako kódování (hned první řádka) a uložit v notepadu soubor jako ANSI, případně se ještě ujistit v nějakým hexadecimálním editoru/prohlížeči (např. F3 v TotalCommander a stisknout 3 pro přechod do HEX), že vepředu nejsou žádný "neviditelný" znaky navíc.
Je ovšem možný, že parser nebude umět český kódový stránky (win-1250, iso-8859-2) - u produktů vytvářených v zahraničí se to stává i relativně často, že na Central European kódový stránky kašlou, ale UTF-8 by to i tak podporovat mělo, takže pak se pokusit správně použít utf-8, tedy uvést ale samozřejmě vložit znaky a uložit soubor skutečně v UTF-8.
POZOR!!! - ukládání do UTF-8 neprovádět v notepadu!!!
Notepad totiž při ukládání Unicode (UTF-16(LE/BE)), ale i do UTF-8, ukládá navíc dopředu 3 identifikační hexadeximální znaky, který nejsou v editoru normálně vidět (pouze v HEX editoru, např. v Total Cmd F3 a stisknout 3 - vepředu jsou pak 3B 0xEFBBBF - pro UTF-8), a některý parsery (upřímně řečeno většina, se kterýma jsem se osobně setkal) je neumějí zpracovat a nedokážou pak ten soubor přečíst. Je potřeba buď použít editor, který ty extra neviditelný byte nezapisuje (např. PsPad, kterej vřele doporučuju), anebo je potom ručně vymazat v hexadecimálním editoru (opět např. v PsPad, nutno stisknout Ins aby šly mazat). Pozor, novou editací v notepadu se ty 3B opět přidají! A pozor, pokud už soubor ty 3B obsahuje, např. PsPad už je při normální editaci neodstraní! (je potřeba je smazat ručně v HEX editoru a potom už je PsPad sám od sebe nepřidá)
A dále, je ten soubor opravdu uložen v tom daným kódu?
(například, pokud je kódování zvoleno utf-8, musí být soubor skutečně uložen jako utf-8, ne jako ANSI, ne jako UNICODE - jak jde zvolit např. v Notepadu, ale i v jiných editorech; a písmena samozřejmě musí být vložena v odpovídajícím kódování, takže nelze např. editovat soubor v notepadu, uložit ho jako ANSI, nastavit ?xml encoding UTF-8 a myslet si, že to bude fungovat, protože skutečný kódování znaků bude stále win-1250).
Jako nejjednodušší bych doporučil pokusit se použít kódování Windows - nastavit do XML jako kódování (hned první řádka) a uložit v notepadu soubor jako ANSI, případně se ještě ujistit v nějakým hexadecimálním editoru/prohlížeči (např. F3 v TotalCommander a stisknout 3 pro přechod do HEX), že vepředu nejsou žádný "neviditelný" znaky navíc.
Je ovšem možný, že parser nebude umět český kódový stránky (win-1250, iso-8859-2) - u produktů vytvářených v zahraničí se to stává i relativně často, že na Central European kódový stránky kašlou, ale UTF-8 by to i tak podporovat mělo, takže pak se pokusit správně použít utf-8, tedy uvést ale samozřejmě vložit znaky a uložit soubor skutečně v UTF-8.
POZOR!!! - ukládání do UTF-8 neprovádět v notepadu!!!
Notepad totiž při ukládání Unicode (UTF-16(LE/BE)), ale i do UTF-8, ukládá navíc dopředu 3 identifikační hexadeximální znaky, který nejsou v editoru normálně vidět (pouze v HEX editoru, např. v Total Cmd F3 a stisknout 3 - vepředu jsou pak 3B 0xEFBBBF - pro UTF-8), a některý parsery (upřímně řečeno většina, se kterýma jsem se osobně setkal) je neumějí zpracovat a nedokážou pak ten soubor přečíst. Je potřeba buď použít editor, který ty extra neviditelný byte nezapisuje (např. PsPad, kterej vřele doporučuju), anebo je potom ručně vymazat v hexadecimálním editoru (opět např. v PsPad, nutno stisknout Ins aby šly mazat). Pozor, novou editací v notepadu se ty 3B opět přidají! A pozor, pokud už soubor ty 3B obsahuje, např. PsPad už je při normální editaci neodstraní! (je potřeba je smazat ručně v HEX editoru a potom už je PsPad sám od sebe nepřidá)
Napíš nejaký text, kde budú znaky s diakritikou, napríklad znaky v hornej vodorovnej rade číselných tlačidiel, spusť flash, urob screen a daj ho sem.
Taktiež sa pozri, či pri voľbe typu písma máš možnosť prepínania kódovania.
Taktiež sa pozri, či pri voľbe typu písma máš možnosť prepínania kódovania.
Riešim ten istý problém, pokiaľ chceš mať natvrdo zadané texty, stačí aby si zapísal (v adobe flash) do poľa to, čo tam chceš mať a pole zmeníš na statický text, takže sa nebude ťahať z toho "xml" súboru.
Druhou možnosťou je pridať do prveho riadku ActionScript-u toto "System.useCodepage=true"
Priznám sa že sa tomu nerozumiem, ale pomáha to.. Verím, že niekto nám vysvetlí, o čo presne ide :)
Druhou možnosťou je pridať do prveho riadku ActionScript-u toto "System.useCodepage=true"
Priznám sa že sa tomu nerozumiem, ale pomáha to.. Verím, že niekto nám vysvetlí, o čo presne ide :)
Sám jsem v tomhle začal pracovat až mi nastal tento problém, všem Vám děkuji za cenné rady, ale přiznám se že nejvíce mi pomohl Augur. Je to sice pracnější a prozatím nevím jak editovat v svf souboru titulní stranu, ale nejvíc tomu rozumím. Jinak všude mám kódování UTF-8 jak v svf, tak xml i html. Pro editaci xml a html používám PsPad
/odpoveď na SZ:
Neviem, či je v CS4 rovnaká možnosť ako je na screene, čo som postoval. Skús v editore zvýrazniť text a kliknúť na výber pravým tlačítkom, či tam nebude voľba zmeny fontu. Alebo niekde v menu.
Taktiež to môže mať súvis s jazykovou verziou tvojho windowsu.
Neviem, či je v CS4 rovnaká možnosť ako je na screene, čo som postoval. Skús v editore zvýrazniť text a kliknúť na výber pravým tlačítkom, či tam nebude voľba zmeny fontu. Alebo niekde v menu.
Taktiež to môže mať súvis s jazykovou verziou tvojho windowsu.