Úvodní stránka | Tato stránka v originále

Unikód

Unikód je mezinárodní úroveň jehož cíl má specifikovat kódové lícování každý charakter potřeboval každým psaným lidským jazykem k jeden jedinečný celočíselné číslo, volal bod kódu. To je explicitní cíl unikóda zrušit tradiční charakter encodings takový jak ti vymezili ISO 8859 standard, který být použit v různých zemích světa, ale být velmi neslučitelný spolu navzájem.

Unikód v záměru zakóduje základní charakteristiky a ne glyphs varianty pro takové charaktery.

Unikód chce poskytovat bod kódu pro každou postavu, ale ne pro každý glyph -- nebo dát toto v více obyčejný (ale méně přesný) požadavky, unikód chce poskytovat jedinečné číslo pro každý dopis, bez ohledu na typografické variace používané tiskárnami.

Tento jednoduchý cíl je velmi komplikován dalším cílem, který má poskytovat bezztrátovou konverzi mezi různé existující encodings.

Tabulka s obsahem
1 unikódové konsorcium
2 repertoár
3 Encodings
4 rozmanitý
5 unikóda na webu
6 fontů unikóda
7 unikódové revizní historie
8 externích spojení

Konsorcium unikóda

Kalifornie- umístěný Konsorcium unikóda nejprve vydávalo “standard unikóda” v 1991, a pokračuje vyvinout standardy založené na tom originálním díle. Unikód byl vyvinut v spojení s Mezinárodní organizací pro standardizaci a to sdílí jeho repertoár charakteru s ISO 10646. Unikód a ISO 10646 být rovnocenný jak charakter encodings, ale unikódový standard obsahuje hodně více informací pro implementers, krytina, do hloubky, témata takový jako bitové kódování, verifikacea vizualizace, a vyjmenovávat množství vlastností charakteru, včetně ti potřebovali pro BiDi podporu. Dva standardy také mají nepatrně odlišnou terminologii.

Repertoár

Rezervy unikóda 1114112 (= 220+216) body kódu, a současně přiřadí charaktery k více než 96000 ti kód poukáže. Prvních 256 kódů přesně odpovídá těm ISO 8859-1, nejpopulárnější 8-kousl kódování charakteru v “západním světě”; jako výsledek, prvních 128 charakterů je také totožné k ASCII.

Unikódový kódový prostor pro charaktery je rozdělen do 17 “letadla” a každé letadlo má 65536 kód poukáže. První letadlo (letadlo 0), Základní vícejazyčné letadlo (BMP), je kde většina charakterů bylo přiřazené, doposud. BMP obsahuje charaktery pro téměř všechny moderní jazyky, a velké množství speciálních znaků. Většina z přiděleného kódu důvody k BMP jsou používány zakódovat CJK charaktery.

Dva více letadel je užité na “grafické” charaktery. Letadlo 1, Doplňkové vícejazyčné letadlo (SMP) je většinou užitý na historické zápisy takový jak Lineární B, ale je také užitý na hudební a matematické symboly. Letadlo 2, Doplňkové Ideographic letadlo (usrknutí) je používáno pro asi 40000 vzácný Charaktery Číňana to být většinou historický, ačkoli tam jsou někteří moderní. Letadlo 14 současně obsahuje některé non-doporučil jazykové značkové charaktery a některé variační výběrové charaktery. Letadlo 15 a letadlo 16 být otevřený pro nějaké soukromé použití.

Tam je hodně diskuse mezi CJK specialisty, zvláště japonské, o desirability a technické hodnotě”Han sjednocení” proces mapoval rozmanitého Číňana a japonské znakové sady do jediného souboru sjednoceného glyphs. (viz Čínské charakterové kódování)

Čepice ~ 220 body kódu existuje aby udržoval slučitelnost s UTF-16 kódovat, který může jen oslovit ten rozsah (vidět dolů). 10 % využití unikódového kódového prostoru navrhne, že toto ~ 20 limit kousku je nepravděpodobný být podáván v blízké budoucnosti.

Encodings

Doposud, to bylo jen říkal, že unikód je znamená přiřadit jedinečné číslo pro všechny charaktery používané lidmi v psaném jazyce. Jak tato čísla jsou uložena ve zpracování textu je jiný záležitost; problémy vyplývají ze skutečnosti, že hodně software v západ má doposud been psaný zabývat se 8-charakter kousku encodings jen a podpora unikóda jen byla přidaná pomalu v uplynulých letech.

Vnitřní logika hodně 8-kousl software dědictví typicky povolí jen 8 kousků pro každou postavu, dělat to nemožný používat víc než 256 bodů kódu bez zvláštního zpracování. Několik mechanismů proto bylo navrhnuté realizovat unikód; který jeden je vybrán závisí na dostupném skladovacím prostoru, zdrojové kódové kompatibilitě a součinnosti s jinými systémy.

UTF-32

Nejjednodušší možný způsob, jak uložit všechny možný 220+216 Kód unikóda poukáže je používat 32 kousků pro každou postavu, to je, čtyři bajty -- proto, toto kódování je odkazoval se na jak UTF-32 unikódem a UCS-4 v ISO/IEC 10646 dokumentace. Hlavní problém s touto metodou je že to používá čtyřikrát doba tradičních encodings, který je proč to je zřídka užité na externí paměť. Nicméně, náležitý k jeho jednoduchosti, mnoho programů bude používat 32 encodings kousků vnitrostátně když zpracuje unikód.

UTF-16

UTF-16 je různě dlouhé kódování, které používá jeden jeden nebo dvě 16-ti bitová slova, projevit na většině platformách jak 2 nebo 4 8-bajty kousku, pro každou postavu.

Objednávka bajtu je postižená hardwarem platformy, tak celý UTF-16 datové proudy jsou vyžadovány začít nulou-šířka ne-rozbít charakter prostoru (U + FEFF), který není považován za část textových dat ale je právě Bajt objednávat značku (BOM), poskytovat souhlasnou preambuli (bajty FE FF nebo FF FE) to umožní dekodéru znát potoční bajtové pořadí. Daný unlikelihood těchto bajtů objevit se v hlavě non-UTF-16 dělit, UTF-16 potoky jsou účinně self-identifikovat. Tam jsou také dvě varianty UTF-16 to zamezit použití BOM: UTF-16LE a UTF-16BE.

UTF-16 dovolí charaktery v BMP být zakódován přímo jak jeden 16-ti bitové kódové hodnoty. Charaktery za BMP jsou zakódovány, zatímco pár 16-ti bitových kódových hodnot kreslených od rozsahu rezervovaného kódu ukazuje, v D800-DFFF rozsah, to nebyli individuálně zadal charakterům.

UTF-8

Další obyčejné kódování je UTF-8, který je také různě dlouhé kódování. Prvních 128 bodů kódu je reprezentováno jedním bajtem, a být rovnocenný k ASCII. Reprezentace vyšších kódových bodů vyžaduje dva k šesti bajtům.

UTF-8 má několik výhod, obzvláště když přidá podporu pro unikód k existujícímu softwaru. Pro jednoho, žádné změny jsou vyžadovány pro doprovodný ASCII jediný. Secondly, většina funkcí od standardní knihovny C programovací jazyk to tradičně byli užití na zpracování charakteru (takový jak strcmp pro srovnání a triviální třídění) ještě pracovat, protože oni operují 8-hodnoty kousku. (kontrastem, k podpoře 16 - nebo 32 bitové encodings zmínily se o nahoře, rozlehlé části staršího softwaru by musely být přepsán.) třetina, pro většinu textů, které používají relativně nemnoho non-ASCII znaky (to je, texty ve většině západních jazycích), kódování je velmi prostor-účinný protože to bude vyžadovat jen mírně víc než 8 kousků na charakter.

Přesná mechanika UTF-8 být takto (prefixed čísel se 0x jsou v hexadecimální notaci):

Nyní žádné jiné sekvence jsou legální, protože žádné skalární hodnoty nad 0x200000 byly přiřazené unikódové charaktery přesto; nicméně, sledy až šesti bajtů budou legální, jakmile tyto body kódu budou přiřazené.

Jako důsledek nad detaily, následující vlastnosti multi-sekvence bajtu myslí si:

UTF-8 byl navrhnut uspokojit tyto vlastnosti aby garantoval, že žádný bajtový sled jednoho charakteru je obsahován uvnitř delšího bajtového sledu dalšího charakteru. Toto zajistí ten bajt-moudrý náhradník-lícování řetězce může být aplikováno na hledání slov nebo fráze uvnitř textu; někteří starší různě dlouhý 8-encodings kousku (takový jako posun-JIS) neměl tuto vlastnost a tak vyrobený řetězec-odpovídat algoritmům spíše komplikovaný. Ačkoli to je argumentoval, že tato vlastnost přidá nadbytečnost k UTF-8-zakódoval text, výhody převažují nad tímto znepokojením; vedle, komprese dat není jeden z cílů unikóda a muset být zvažován nezávisle.

UTF-7

Nejméně obyčejné kódování je pravděpodobně UTF-7. Pantomima technicky vyžaduje to kódování poslalo e-mail je ASCII, tak nějaký e-mail, který používá kódování unikóda je neplatný. Nicméně, toto omezení je všeobecně ignorováno. UTF-7 dovolí poště používat unikód ale také následovat standardy. Nějaký standardní ASCII znak je zakódovaný jak je, nějaký charakter nad 128 ASCII znaky je zakódován používat příkazovou sekvenci ' + ' charakter následovaný charakterem unikóda zakódovaným v Base64, a skončil ' - '. Doslovný ' + ' charaktery jsou zakódovány jak ' + - '.

Rozmanitý

Standard unikóda také zahrnuje množství příbuzných položek, takový jak vlastnosti charakteru, textové normalizační formy a oboustranný displej objednají (pro správnou ukázku textu obsahovat oba pravý-k-levé skripty, takový jako arabština nebo hebrejština, a odešel-k-pravé skripty).

V roce 1997 návrh byl předstíral, že zakóduje charaktery Klingon jazyka v letadle 1 ISO/IEC 10646-2. Návrh byl odmítnut v roce 2001 jak “nevhodný pro kódování.” elvish píší Tengwar od J. R. R. Tolkien' s Střední zemské nastavení bylo navrhováno pro zahrnutí v roce 1993.

Unikód na webu

Nedávné internetové prohlížeče zobrazují internetové stránky používat unikód jestliže vhodný font je instalován (vidět Unikód a HTML).

Ačkoli pravidla syntaxe mohou ovlivnit objednávku ve kterém charaktery mají dovoleno se objevit, oba HTML 4.0 a XML 1.0 dokumenty jsou, samozřejmě, složený z charakterů od celého rozsahu unikódových kódových bodů, bez jediný hrst zamítnutých řídících znaků a permanentně-unassigned kód zaměří D800-DFFF a FFFE-FFFF. Tyto charaktery projeví jeden přímo jako bajty shodovat se ke kódování dokumentu, jestliže kódování podporuje je nebo oni mohou být psáni jako odkazy číselného znaku založené na unikóde charakteru bod kódu, jak dlouho jak kódování dokumentu podporuje číslice a požadované symboly psát odkazy (všechny encodings schválené pro použití na internetu dělají). Například, odkazy ΔЙקم(nebo stejný numerické hodnoty vyjadřovaly v hexadecimální, s &#xjako předpona) displej na vašem prohlížeči jak?,?,?,?,?,?,?,? a? -- jestliže vy máte pořádné fonty, tyto symboly vypadají jako Řecké velké písmeno “delta”, Cyrilské velké písmeno “krátký já”, Arabský dopis “Meem”, Hebrejský dopis “Qof”, Thajský číslice 7, Japonec Hiragana “#rquote, zjednodušení ČíňaniList”, tradiční Číňani “listují”, a Korejský Han-geul slabika “Nyrh”, příslušně.

Unikódové fonty

Volný a maloobchodně fonty založené na unikóde jsou obyčejné, protože nejprve TrueType a nyní OpenType používá unikód. Tyto formáty fontu mapují unikódové kódové důvody k glyphs.

Tam jsou tisíce fontů na trhu, ale pravděpodobně méně než polovina-fonty tuctu pokoušejí se podporovat většinu unikódového charakterového repertoáru. Místo toho, unikód založil fonty typicky zaměřit se na doprovodný jen základní ASCII a zvláštní skripty nebo soubory charakterů nebo symbolů. Tam je několik důvodů pro toto: aplikace a dokumenty zřídka potřebují skýtat charaktery od víc než jeden nebo dva psací systémy; fonty inklinují být prasata zdroje v počítačových prostředích; a operační systémy a aplikace stanou se zvýšeně inteligentní s ohledem na získání glyph informace od oddělených fontových souborů, zatímco oni jsou potřebováni. Dále, to je význačný úkol k designu souhlasný soubor instrukcí vizualizace pro tens tisíců glyphs; takový podnik projde kolem bodu klesajících návratů.

Unikódová revizní historie

Externí odkazy