Apr 09
18
Для правильного отображения содержания страницы браузеры используют наборы символов в различных кодировках. Наборы символов в различных кодировках для разных языков отличаются в зависимости от того, какой язык поддерживает HTML страница.
Первая кодировка использовавшаяся в WWW была ASCII. ASCII поддерживает цифры 0-9, прописные и строчные буквы английского алфавита и некоторые специальные символы.
Многие страны не используют кодировку ASCII, по умолчанию используются кодировки семейства ISO-8859-(х). Если веб-страница использует другой набор символов, чем ISO-8859-1, он должен быть указан в <meta> тэге.
Кодировки ISO используемые в различных странах:
| Кодировка | Описание | Где используется |
|---|---|---|
| ISO-8859-1 | Латинский алфавит, часть 1 | Северная Америка, Западная Европа, Латинская Америка, Карибский бассейн, Канада, Африка |
| ISO-8859-2 | Латинский алфавит, часть 2 | Восточная Европа |
| ISO-8859-3 | Латинский алфавит, часть 3 | Центрально европейские,эсперанто, некоторые другие |
| ISO-8859-4 | Латинский алфавит, часть 4 | Скандинавия / Прибалтика (и другие не ISO-8859-1) |
| ISO-8859-5 | Латинский/Кириллица часть 5 | Языки использующие кириллический алфавит – Россия, Белоруссия, Болгария и другие |
| ISO-8859-6 | Латинский/Арабский часть 6 | Языки, которые используют арабский алфавит |
| ISO-8859-7 | Латинский/Греческий часть 7 | Современный греческий, и математические символы из греческого. |
| ISO-8859-8 | Латинский/Иврит часть 8 | Языки, которые используют иврит за основу |
| ISO-8859-9 | Латинский 5 часть 9 | Турецкий язык |
| ISO-8859-10 | Саамский, Эскимосский | Скандинавские языки |
| ISO-8859-15 | Латинский 9 (0) | Как ISO 8859-1 но некоторые символы заменены на другие, добавлен знак евро |
| ISO-2022-JP
ISO-2022-JP-2 |
Латинский/Японский
Латинский/Японский часть 2 |
Японский язык |
Так как наборы символов, перечисленные выше, ограничены по размеру и не совместимы в многоязычной среде, Консорциум Unicode разработал стандарт Unicode. Unicode включает все символы, знаки пунктуации и буквы всех языков в мире.
Unicode обеспечивает обработку, хранение и обмен текстовыми данными, независимо от платформы, независимо от того, какие программы применяются и какой язык используется.
Стандарт Unicode поддерживается XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML и т.д. Unicode также поддерживается многими операционными системами и всеми современными браузерами.
Юникод может быть реализован различными символьными наборами. Наиболее широко используется кодировка UTF-8 и UTF-16:
В UTF8 символ кодируется от 1 до 4 байт. UTF-8 может представлять какой-либо символ в Unicode . UTF-8 обратно совместим с ASCII. UTF-8 является предпочтительной кодировкой для работы с электронной почтой и веб-страницами.
UTF-16 – 16-битный формат преобразования использует переменную длину кода для кодирования символов Unicode, и способен отобразить символы всех существующих алфавитов. UTF-16 используется в основных операционных системах и средах, например, Microsoft Windows 2000/XP/2003/Vista/CE и Java и. NET. Первые 256 символов Unicode соответствуют 256 символам ISO-8859-1. Все HTML 4 процессоры уже поддерживают UTF-8, и все XHTML и XML процессоры поддерживают UTF-8 и UTF-16.

[...] Джинн пишет: ISO-8859-5, Латинский/Кириллица часть 5, Языки использующие кириллический алфавит – Россия, Белоруссия, Болгария и другие. ISO-8859-6, Латинский/Арабский часть 6, Языки, которые используют арабский алфавит … UTF-16 – 16-битный формат преобразования использует переменную длину кода для кодирования символов Unicode, и способен отобразить символы всех существующих алфавитов. UTF-16 используется в основных операционных системах и средах, например, Microsoft Windows … [...]