Starší komentáře ke článku: Čeština v grafické knihovně GD
Zpět na článek | Úvodní stránka Interval.cz
Datum vložení: 2.11.2001 16:46:07
1. win1250 moze pouzivat len somar :), a potom sa cuduje ze ma problem. Kazdy normalny editor vie iso8859-2. s win1250 sa proste do sveta nedotanete!!! v MySQL vam nepojde triedenie, GD nepojde vypis textu, atd...
2. prekodovanie
este so nevidel cloveka ktory si dokaze takto komplikovat zivot... (to bude asi tym ze naprecital manual k php)
funkcie pouzitelne na replace:
str_replace()
substr_replace()
konverzia:
sekcia recode
sekcia iconv
sekcia multi-byte string (oznac. ako EXPERIMENTAL) :(((
btw. ja uz prechadzam iba na UTF8
Datum vložení: 2.11.2001 23:09:00
Díky za Váš názor.
Tento článek byl určen čtenářům, kteří se dostali právě kvůli kódování Win1250 do nesnází, a měl by jim poradit, jak z nich ven.
Používání kódování 1250 je opravdu diskutabilní, ale stále se ještě najdou lidé, kteří jej používají, mají k tomu různé důvody, a <B>rozhodně si o nich nemyslím, že by byli oslové</B>. Dotazy na podobná témata se to v diskuzních fórech jen hemží.
Pravdou je, že s kódováním 1250 neběží třídění dat v MySQL správně.
I když nepoužijete CP1250, musíte ISO8859/2 převést na UTF8, pokud chcete v GD využít TTF font.
To je neoddiskutovatelné.
Nechápu, jak chcete efektivně pouzivat str_replace() a substr_replace() pro řešení převodu několika jednotlivých znaků, na skupiny znaků. Nijak jste své řešení nenastínil, z názvu funkce to jaksi nevyplyne.
Protože funkce str_replace nahrazuje řetězec obsažený v nějakém jiném řetězci.
Předpokládám, že chcete pro každý nahrazovaný znak opakovaně provádět str_replace na celý řetězec,
což mi připadá docela nepraktické.
Neříkám, že mé řešení je ideální, ale průchod převáděným řetězcem je jen jeden.
Ne každý má knihovny <B>recode</B> nebo <B>iconv</B>. Ne každý má možnost je přikompilovat.
V úvodu sekce <B>multi-byte</B> je, jak sám píšete, uvedeno, že je <B>EXPERIMENTAL</B>, a její použití je výslovně na <B>vlastní riziko</B>.
Iconv vypadá stejně zajímavě jako recode, ale informace o použitelných kódováních, údajně dostupná na domovské stránce, tak jak se to můžeme dočíst na GNU serveru : <a href='http://www.gnu.org/directory/libiconv.html' target='_blank'>http://www.gnu.org/directory/libiconv.html</a>, je bohužel nedostupná, uvedená homepage <a href='http://clisp.cons.org/~haible/packages-libiconv.html' target='_blank'>http://clisp.cons.org/~haible/packages-libiconv.html</a> totiž neexistuje.
To je docela slušná podpora k něčemu, co bych měl začít používat, nemyslíte?
Pokud chcete, aby Vaše skripty byly použitelné na většině serverů, musíte počítat s tím, že na nich třeba přídavné knihovny nebudou.
A teď to hlavní: Nedávám si za cíl každému vnutit, aby používal kódování 1250. Ani že ISO 8859/2 je lepší nebo horší.
Ale chci nastínit čtenářům metody, kterými se určité problémy dají řešit.
Proč jen tupě použít něco, co už někdo vytvořil, a nezamýšlet se nad tím, jak by se to dalo řešit vlastními silami.
Proč myslíte, že kromě knihovny recode se objevila ještě knihovna iconv? Protože se někdo nesmířil s použitím cizího řešení a chtěl to vyřešit po svém, třeba i lépe.
Někdy je vlastní řešení levnější, nebo rychleji dostupné, nebo zábavnější…
Kdyby to tak nebylo, máme jen jeden operační systém, jedno kódování, a všichni by byli spokojeni. Ale realita, jak vidíte sám, je jiná.
Zdá se, že máte přehled, a o programování určitě něco víte. Podělte se s námi o své zkušenosti, ať pořád nejsme tak hloupí, a napište o nich nějaký článek.
Přeji příjemný den
Michael Kislinger
Datum vložení: 5.11.2001 12:00:16
a uz je to tu zas!
opravdu si myslite, ze je vhodne, nekoho usadit a pak mu poprat prijemny den? Uz si ty prani, prosim, nechte!
jinak abych pridal i vecne pripominky - clanek je OK, vysvetleni v diskusi taky.
Mimochodem - mozna jste mohl toho cloveka usadit jemneji - prave takovehle informace v diskusi pod clankem jsou casto "zlaty poklad". A jeho nazory nejsou uplne od veci.
Mimochodem - dalsi verze PHP bude umet nativne UNICODE a dalsi verze MySQL taky. Takze si myslim, ze pokud postupne prejdeme na UTF-8, bude to jenom dobre!
A jestli mohu prosit - promyslete si lepe pouzivani vety "preji prijemny den". Nejste pan Zakopcanik, abych vam podobna uslovi toleroval a mam neodbytny pocit, ze je to amerikanismus a v nasem krasnem jazyce nema co delat! Dekuji.
Datum vložení: 5.11.2001 14:22:28
Dobrý den,
mou snahou nebylo někoho <B>usadit</B>, ale objasnit mé důvody a úmysly ohledně článku. Proto jsem o vhodnosti popřání dobrého dne v úvodu a závěrečného přání příjemného dne ani neuvažoval.
To, že někdo vyjádří nesouhlas s mými výroky, není důvodem, abych se k němu nechoval slušně. Když mi pošlete e-mail, a v něm napíšete to, co je v diskuzi, také mi připadá slušné Vás v úvodu a závěru pozdravit.
Nerozumím tomu amerikanismu. Pana Zákopčaníka a jeho neustále opakovaný slogan také neobdivuji.
Spíláte mi za slušnost? Každý svůj e-mail končím slovy Přeji příjemný den.
Co tam mám psát? S pozdravem? Na shledanou?
Když jsme u krásy našeho jazyka, rád bych připomněl film Obecná škola. Tam neposlušní chlapci dostali od učitele rákoskou. Poté si s učitelem podali ruce a poděkovali mu. Na znamení, že jejich přátelství tímto incidentem neutrpělo.
Co se týká věcných připomínek, souhlasím s Vámi.
Já osobně, když si přečtu nějaký článek, se stejnou pozorností čtu i komentáře, právě proto, abych si porovnal svůj názor s ostatními čtenáři. Nebo, pokud o daném tématu nic nevím, abych zjistil, zda článek není úplně zcestný. Předpokládám, že tak to dělají i další čtenáři. Takže má předchozí odpověď byla z části věnována autorovi příspěvku, a také ostatním čtenářům. A ti mi vůbec nic neudělali. Proč bych je tedy neměl pozdravit?
Vám tedy děkuji za názor
a všem ostatním čtenářům přeji příjemný den,
i když Vám jej přeji také :-)
Michael Kislinger
Datum vložení: 6.11.2001 13:01:24
No dobre, dobre, kazdy at si pise co chce, je mi to jedno. Do diskuse jsem to napsal jenom proto, ze to je muj nazor a od toho tam diskuse je. Cizi nazory je dobre znat, aby se clovek zamyslel a pripadne si upravil ten vlastni. Takze tak..
Jenom k tomu amerikanismu - v USA muzou napsat "have a nice day", my tady piseme treba "mejte se pekne", nebo "mejte se"... me osobne to zni mene strojene
Datum vložení: 11.3.2004 12:31:23
Je to neoddiskutovatelny fakt, ze hezky den prejte americkym vojakum ve Vietnamu, ale ne ctenarum. V ceskem dopise skutecne pouzivame jedine slusne "S pozdravem" popr. "S uctou" anebo "Navzdy Vas". Myslim, ze v odbornem foru se muzete jakymkoliv rozloucenim uplne vyhnout.
Navzdy Vas
James Bond
Datum vložení: 12.3.2004 15:23:01
Jak může kázat o etice někdo, kdo nemá ani tolik odvahy se pod svůj názor podepsat, natož připojit e-mailovou adresu.
Toto je odborný server, a diskuze by měla být na odborné úrovni na dané téma.
Debatovat o správnosti závěrečného pozdravu, zvláště po více než dvou letech od publikování, mi připadá více než malicherné.
P.S. Buďte si čí chcete, ale mě se nevnucujte, já o Vás nestojím.
A už vůbec ne navždy.
Michael Kislinger
Datum vložení: 25.10.2008 23:46:38
Dobře řečeno. Vaše funkce je dobrá, ale trošku jsem ji optimalizoval: function PrevedNaUTF($str) { $tabulka = array( 'Č' => 'Č', 'č' => 'č', 'Ď' => 'Ď', 'ď' => 'ď', 'Ě' => 'Ě', 'ě' => 'ě', 'Ň' => 'Ň', 'ň' => 'ň', 'Ř' => 'Ř', 'ř' => 'ř', 'Š' => 'Š', 'š' => 'š', 'Ť' => 'Ť', 'ť' => 'ť', 'Ů' => 'Ů', 'ů' => 'ů', 'Ž' => 'Ž', 'ž' => 'ž' ); return strtr($str, $tabulka); } PS: inconv, mb_... aj. funkce v PHP problematické pro převod z WIN-1250, je nutné nejdříve převést do ISO... Jsem rád, že jste tento článek napsal, protože patřím mezi skupinu, která používá kodování WINDOWS-1250 a nevidím důvod proč preferovat UTF-8 tak dlouho dokud tvoříme stránky v českém jazyce. Osobně se spokojím s argumentem, že UTF-8 zvětšuje výslednou velikost souboru. Děkuju!
Datum vložení: 12.11.2001 9:42:15
Tak nevím, ale já win1250 používám (stejně 99% klientů jede na woknech a všechny ty konverze jednak skytaji spoustu mist, kde to může haprovat a navíc to žere procesor) a třídí to docela dobře... Ono když se té databázi řekne, že má data v 1250ce, tak samozřejmě třídí dobře...
Merlin
Datum vložení: 12.11.2001 9:42:15
Tak nevím, ale já win1250 používám (stejně 99% klientů jede na woknech a všechny ty konverze jednak skytaji spoustu mist, kde to může haprovat a navíc to žere procesor) a třídí to docela dobře... Ono když se té databázi řekne, že má data v 1250ce, tak samozřejmě třídí dobře...
Merlin
Datum vložení: 4.7.2002 10:10:16
az uvidite mezifiremni smlouvu v jejimz napisu je misto r s hackem preskrtnute kolecko nebo clanek z uredni listiny, ktery je psan bez diakritiky (aby se to nedejboze nevytisklo spatne), pochopite, ze s CP 1250 neni neco v poradku :-)
Datum vložení: 7.10.2002 6:20:27
No, ještě se mi nestalo, že bych potkal takovýho debila, kterej neumí psát mezifiremní smlouvy. Pokud ano, tak nebude chyba stejně na jeho straně, ale na straně člověka, kterej mu k sepsání poskytl počítač - tedy zaměstnavatel, potažmo administrátor.... Když to prase míchá programy, který neumí správně psát s programy, které to umí, tak patří na druhej konec sítě. Když si běžný uživatel nastaví špatně počítač, tak to jsem jakžtakž ochoten pochopit. Když mu jej blbě nastaví admin , tak potěšpámbuh tu firmu....
Datum vložení: 7.10.2002 6:24:44
Když ani vy pane nedokážete psát česky, tak jak byste chtěl po programech, aby to uměly? Čárky a háčky už tu nějaký to století přeci jen máme... Naučte se je používat...
Datum vložení: 25.10.2008 23:50:54
Je dobré, abyste věděl, že s kódováním CP1250 NENÍ nic špatně. Takže až Vámi zmíněnou smlouvu uvidím řeknu si, že to programátor ledabyle (ne)otestoval a zamyslím se nad profesionalitou celé firmy.
Datum vložení: 14.10.2002 11:14:01
Jak jsem zjistil, pod koncovkou TTF se skrývají jak fonty TrueType, tak OpenType (u mě třeba tahoma.ttf). No a na ty překódování do UTF-8 nezabírá. Nevíte někdo jak na ně?
Datum vložení: 25.7.2005 18:49:06
Díky. Tento článek mi pomohl a urychlil práci.
Datum vložení: 19.9.2007 19:31:50
Díky za článek, pomohl mi.