Кодировка русского языка в html: Атрибут charset | htmlbook.ru

Содержание

Кодировка HTML страницы и атрибуты — Знакомство с HTML — codebra

Дополнительное видео по теме

Как добавить кодировку страницы?

Вы когда-нибудь видели на странице в интернете какие-то знаки вопроса, квадратики и прочее вместо текста? Думаю, что видели. Так вот, у этого сайта проблема с кодировкой, вполне возможно разработчик ее не указал. Кодировка, простыми словами, это таблица содержащая набор символов. Для того чтобы добавить кодировку сайта, нужен многофункциональный тег <meta> , о нем написан целый урок. Итак, чтобы браузер понял, какую кодировку вы используете, применяйте эту строку:

Код HTML

<meta charset = "utf-8">

Что такое кодировка?

Кодировка, это набор символов, представленный в таблице. Таблица содержит сам символ и его код, например, двоичный (нули и единицы). Термин «набор символов» редко используется, чаще всего говорят «кодировка». На данный момент популярны две кодировки: ASCII и UTF-8. На нашем сайте используется кодировка

UTF-8.

Подробнее о кодировке?

Кодировка ASCII является американской и разрабатывалась для английского языка. Так как, к примеру, французский язык имеет надстрочные знаки, а русский алфавит не похож на английский, был разработан стандарт Unicode для расширения кодировки ASCII. Но и в Unicode, со временем, стало не хватать места для размещения новых символов. Поэтому на основе Unicode создали кодировку UTF-8, которая исправила эти недостатки. UTF-8 позволяет кодировать до 2 миллиардов символов, поэтому она доминирует в интернете.

В UTF-8 коды от 0 до 127 используются для представления символов ASCII. Если символ не входит в набор ASCII, то старший бит первого байта устанавливается в 1, что свидетельствует о дополнительном использовании байтов. То есть если в документе используются только символы из ASCII, то каждый символ в UTF-8 будет кодироваться восьмью битами.

Что такое атрибуты?

Настало время познакомиться с атрибутами в HTML. Вы их уже встречали, просто на них не акцентировалось внимание. Атрибуты – это дополнение к тегам, расширяющее их возможности. Они всегда указываются в открывающемся теге. Атрибут состоит из имени и значения, разделенного знаком равенства.

Имя атрибута необходимо писать в нижнем регистре. Хотя HTML5 и позволяет писать в любом регистре и не использовать кавычки, все же так не рекомендуется делать.

Виды кодировок символов [АйТи бубен]

В общем случае кодировка или кодовая таблица — это однозначное соответствие между подмножеством целых чисел (как правило, идущих подряд) и некоторым набором символов. Ключевым здесь является понятие символа. Символ может быть буквой (а может и не быть), может соответствовать звуку речи (а может и не соответствовать) и может быть представлен графическим знаком (но может обходиться и без какого бы то ни было видимого образа). Символ — это атом смысла, мельчайшая неделимая частица информации.

Так, латинское «А» и кириллическое «А» — это разные символы, потому что они употребляются в разных контекстах и несут в себе разную информацию.

Определяющим для любой кодировки является количество охватываемых ею кодов и, соответственно, символов. Поскольку тексты в компьютере хранятся в виде последовательности байтов, большинство кодировок естественным образом распадаются на однобайтовые, или восьмибитные, способные закодировать не больше 256 символов, и двухбайтовые, или шестнадцатибитные, чья емкость может достигать 65636 знакомест.

Если кодировка ISO 8859-5 для кириллицы так и не прижилась, первая из этой серии — кодировка ISO 8859-1, известная также под именем Latin-1, — сумела стать общепринятым стандартом для кодирования «расширенной» латиницы. В эту кодировку включены почти все символы, употребляющиеся в письменностях западноевропейских языков — французского, немецкого, испанского и т.д.

Внедрение Юникода привело к изменению подхода к традиционным 8-битным кодировкам. Если раньше кодировка задавалась шрифтом, то теперь она задаётся таблицей соответствия между данной кодировкой и Юникодом. Фактически 8-битные кодировки превратились в форму представления некоторого подмножества Юникода. Это намного упростило создание программ, которые должны работать с множеством разных кодировок: теперь, чтобы добавить поддержку ещё одной кодировки, надо всего лишь добавить ещё одну таблицу перекодировки в Юникод.

В 1991 году была предпринята попытка создать единую универсальную двухбайтовую кодировку, охватывающую все алфавиты и иероглифические системы мира. Результатом стал стандарт под названием Unicode, покрывающий не только системы письменности всех живых и большинства мертвых языков мира, но и множество музыкальных, математических, химических и прочих символов. Массовое применение Unicode в документах и программах остается делом будущего, для web- дизайнера эта кодировка имеет особое значение, так как именно она объявлена «стандартной кодировкой документа» в

HTML начиная с версии 4.

В ближайшее время все более важную роль будет играть особый формат Unicode (и ISO 10646) под названием UTF-8. Эта «производная» кодировка пользуется для записи символов цепочками байтов различной длины (от одного до шести), которые с помощью несложного алгоритма преобразуются в Unicode- коды, причем более употребительным символам соответствуют более короткие цепочки. Главное достоинство этого формата — совместимость с ASCII не только по значениям кодов, но и по количеству бит на символ, так как для кодирования любого из первых 128 символов в UTF-8 достаточно одного байта (хотя, например, для букв кириллицы нужно уже по два байта).

Для указания кодировки символов web-страницы используются следующие обозначения кодовых таблиц:

На web- странице указать кодировку документа можно двумя cпособами:

Элемент meta является дочерним по отношению к разделу заголовка документа (head) и служит для указания типа и кодировки содержимого страницы. Типом содержимого является структурированный текст в формате html (text/html), используемая кодировка кириллица windows (charset=windows-1251).

Обычно используют оба способа одновременно. Например, для указания кодировки КОИ8 для украинского языка на web-странице, используют следующую структуру документа:

<?xml version="1.0" encoding="KOI8-U"?>
<!DOCTYPE html PUBLIC ... >
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Моя перша сторiнка</title>
        <meta http-equiv="Content-Type"
              content="text/html; charset=KOI8-U" />
    </head>
    ...
</html>

При сохранении текста выбирайте ту же кодировку, что указали на web-странице.

Поэкспериментируйте с различными кодировками, и вы убедитесь, что символы латинского алфавита, цифры и знаки пунктуации передаются без изменений в подавляющем большинстве из них.

@charset | CSS | WebReference

Команда @charset применяется для задания кодировки внешнего CSS-файла. Это имеет значение в том случае, если в CSS-файле используются символы национального алфавита.

Для внешней таблицы стилей браузер последовательно просматривает следующие пункты для определения кодировки таблицы стилей:

  1. кодировка, которую отдает сервер;
  2. правило @charset;
  3. атрибут charset элемента <link> (данный атрибут устарел, не используйте его).

Приведённый список имеет чётко выраженную иерархию — чем выше находится пункт, тем выше его приоритет. Если ни один из пунктов не найден, будет установлена кодировка UTF-8.

Синтаксис

@charset "<кодировка>";

Обозначения

ОписаниеПример
<тип>Указывает тип значения.<размер>
A && BЗначения должны выводиться в указанном порядке.<размер> && <цвет>
A | BУказывает, что надо выбрать только одно значение из предложенных (A или B).normal | small-caps
A || BКаждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке.width || count
[ ]Группирует значения.[ crop || cross ]
*Повторять ноль или больше раз.[,<время>]*
+Повторять один или больше раз.<число>+
?
Указанный тип, слово или группа не является обязательным.
inset?
{A, B}Повторять не менее A, но не более B раз.<радиус>{1,4}
#Повторять один или больше раз через запятую.<время>#

Значения

Для русского языка обычно указывается кодировка windows-1251 или utf-8. Значение кодировки обязательно должно быть взято в кавычки.

Пример

@charset "windows-1251";
body {
 font: 11pt Arial, Helvetica, sans-serif;
 margin: 0;
 color: #000;
}
p.new:after {
 content: " Новье!";
}

Примечание

В браузере Internet Explorer до версии 7 включительно название кодировки допускается писать без кавычек, что противоречит спецификации CSS.

Спецификация

Каждая спецификация проходит несколько стадий одобрения.

  • Recommendation (Рекомендация) — спецификация одобрена W3C и рекомендована как стандарт.
  • Candidate Recommendation (Возможная рекомендация) — группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
  • Proposed Recommendation (Предлагаемая рекомендация) — на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
  • Working Draft (Рабочий проект) — более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
  • Editor’s draft (Редакторский черновик) — черновая версия стандарта после внесения правок редакторами проекта.
  • Draft (Черновик спецификации) — первая черновая версия стандарта.

Браузеры

В таблице браузеров применяются следующие обозначения.

  •  — свойство полностью поддерживается браузером со всеми допустимыми значениями;
  •  — свойство браузером не воспринимается и игнорируется;
  •  — при работе возможно появление различных ошибок, либо свойство поддерживается лишь частично, например, не все допустимые значения действуют или свойство применяется не ко всем элементам, которые указаны в спецификации.

Число указывает версию браузера, начиная с которой свойство поддерживается.

Автор и редакторы

Автор: Влад Мержевич

Последнее изменение: 30.08.2017

Редакторы: Влад Мержевич

URL кодирование и декодирование

Для тех кто не любит нудных объяснений 🙂

Введите строку в одно из полей и нажмите соответствующую кнопку

Строка в закодированном виде


Строка в нормальном виде

Для тех кто любит «во всем разобраться» 😉

Кодирование URL и просто двоичных данных в последовательность букв, цифр и некоторых специальных знаков латинского алфавита в интернете было связано с ограничением физических устройств на передачу только алфавитно-цифровых символов. В URL такое кодирование обычно применяется для передачи символов в формате Unicode (как правило UTF-8) в последовательность из двух байт, записанных в шестнадцатиричном представлении. Каждый байт предваряется знаком %. При таком кодировании строчка «корова» будет иметь вид: %D0%BA%D0%BE%D1%80%D0%BE%D0%B2%D0%B0. То есть русской букве к будет соответствовать последовательность %D0%BA и.т.д. Такое кодирование является общепринятым для путей к файлам или папкам, входящим в URL.

Подмножесто символов, которые разрешены в URL немного шире чем алфавитно-цифровые символы, так, в URL можно использовать дефис и подчеркивание, но нельзя, например, использовать одинарные или двойные кавычки. Некоторые символы используют для разделения параметров в URL, и их кодирование в этом случае будет неправомочным. В зависимости от отношения к кодированию специальных символов в javascript различают функции encodeURI и decodeURI, которые могут работать с полным URL, и, функции encodeURIComponent / decodeURIComponent, применяемые для параметров, входящих в URL.

Вообще говоря, кодирование параметров может быть достаточно произвольным. Здесь разработчик может использовать любую схему кодировки, если состав ее символов будет коректно передаваться через сеть. Так, вместо строки кириллицы в utf-8 можно применить строку в кодировке Windows 1251. В этом случае слово «корова» будет выглядеть как %EA%EE%F0%EE%E2%E0. То есть, символу к будет соответствовать последовательность из двух букв со знаком процента перед ними — %EA. Закодировать в строки с процентами кириллицу из других кодировок можно в нашем HTML кодировщике. В принципе, допустимы также другие способы кодирования, например, escape/unescape функцию javascript. Слово «корова» в этом случае будет выглядеть как %u043A%u043E%u0440%u043E%u0432%u0430.

URL кодировщик с расширенными возможностями

Как прописать кодировку в html?

Нужно правильно раскодировать сигналы, которые наш мозг получает из окружающей среды. Проще говоря, следует правильно « настроить » свой взгляд на жизнь. Ну, вроде не полупустой кошелек, а наполовину полный. То есть, требуется использовать нужную кодировку. Для интернета чаще всего правильной является кодировка utf :

Немного о кодировках

Наверное, не является секретом тот факт, что основным типом содержимого во всемирном веб-пространстве является текст. Конечно, сейчас с этим утверждением можно поспорить, но буквально какой-то десяток лет назад это было так.

Но передача текста в цифровом формате происходит совсем иначе, чем у нас на экране. Для перевода текста в машинный код используется двоичная система исчисления, состоящая лишь из 0 и 1.

Следующим этапом передачи текста в виртуальном пространстве является его отображение на клиентских машинах с помощью браузера, интерпретирующего html . Вот тут и начинается самое интересное, когда браузер клиента и веб-страница содержат в себе текстовые данные в разных кодировках. Тогда пользователь на своем мониторе видит не текст, а какие-то непонятные ( нечитаемые ) символы:


Чаще всего нужно всего лишь поменять кодировку веб-страницы на кодировку utf8. Ведь она является наиболее распространенной во всем интернете.

Кодировка UTF-8

Наиболее распространенная среди стандартизированных и общепринятых текстовых кодировок. Расшифровывается как « восьмибитный формат преобразования Юникода » или « Unicode Transformation Format ».

Стандарт был разработан еще в 1992 году. В настоящее время он широко применяется не только во всемирной паутине, но и на прикладном уровне ( локальные машины и операционные системы ). Основным достоинством кодировки является ее совместимость с ASCII:


ASCII («American standard code for information interchange») еще одна (но более старая) кодировка представления текстовых данных. В ее таблице символов значения печатных и непечатных знаков заданы с помощью чисел в шестнадцатеричной системе исчисления.

При использовании UTF-8 для передачи данных в формате ASCII используются 7 первых битов. Последний ( восьмой ) служит для вывода « мусора » ( некорректно раскодированных данных ). Что при использовании кодировки для латинских символов существенно уменьшает объем текстовых данных.

Как уже говорилось, часто для корректного отображения текста достаточно лишь поменять кодировку документа. Рассмотрим, как это можно сделать в различных дисциплинах, применяемых для построения веб-пространства.

Как установить кодировку в HTML и PHP

Для установки utf 8 кодировки в html используется специальный тег . Он объединяет в себе в форме атрибутов значение метатегов.

Метатеги используются для передачи и хранения информации, предназначенной для браузеров и поисковиков. Одним из атрибутов тега является charset . Он служит для установки кодировки веб-страницы. Пример использования:


Также можно установить кодировку некоторым элементам страницы. Например, ссылке. Для этого также используется атрибут charset , значением которого выступает нужная кодировка:

Кроме этого можно присваивать значения непосредственно заголовкам http , которые передаются вместе с ответом на запрос от браузера к серверу. В таком случае кодировка сайта utf 8 , переданная через заголовок, будет доминирующей над значением, заданным внутри веб-страницы.

Многие из страниц ресурсов не являются статическими, а динамически создаются благодаря использованию серверных языков программирования. Чаще всего для построения сайтов применяют PHP . Поэтому важно знать о его средствах, позволяющих «на лету» поменять кодировку генерируемой веб-страницы.

Для установки и модификации значений заголовка используется функция header() . Ее синтаксис:

Чтобы корректно задать в php кодировку utf 8 , вызов функции header() в коде должен находиться выше всех тегов html .

Глобальные настройки кодировки

Описанные выше методы могут использоваться для отдельных веб-страниц или небольших сайтов. Но что делать, если вы имеете дело с ресурсом, состоящим из нескольких сотен страниц и десятка разделов? Давайте разберемся, как установить кодировку utf 8 для всего сайта.

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


В качестве более глобального способа изменения кодировки стоит рассмотреть пример на основе любого локального сервера. Для большей наглядности мы возьмем Denwer , который довольно широко распространен в наших краях.

Чтобы изменить кодировку всех ресурсов, размещенных на нашем сервере Apache , нужно отредактировать содержимое конфигурационного файла httpd.conf . Он находится по пути:

Как и в предыдущем примере, в нем нужно заменить значение AddDefaultCharset на нужное. В нашем случае это utf-8 :

Изменение кодировки базы данных

Изменение кодировки рассмотрим на примере MySQL . Так как это одна из самых востребованных и распространенных СУБД, применяемых в сайтостроении. Все изменения можно произвести в файле my.ini . В Денвере он находится по пути:

Здесь нужно поменять значение нескольких полей на utf-8 :

  • default-character-set ;
  • character-set-server ;
  • init-connect = «set names» ;
  • default-character-set .

И затем добавить строку skip-character-set-client-handshake :


Подобные изменения можно внести не только для всех баз данных на сервере, но и для отдельно взятой в php базы mysql . Сделать это можно через пользовательский интерфейс оболочки PHPMyAdmin .

Сначала узнаем, какие кодировки установлены по умолчанию в нашей базе данных. Для этого вводим запрос SQL :

Вот какой ответ мы должны получить:


Если какие-либо значения нас не удовлетворяют, то нужно их изменить. Воспользуемся для этого запросом к ядру сервера СУБД:

В результате мы получим новые значения переменных character_set_connection , character_set_results и character_set_client.

К сожалению, не все так просто обстоит с изменением кодировки в таблицах Excel . Для этого придется воспользоваться сторонней программой для перекодирования файлов. Или обработать данные с помощью громоздких функций.

Мы рассмотрели все основные способы изменения веб-документов на кодировку utf . Надеемся, что этот материал поможет вам не только выбрать правильную кодировку текста, но и « установить » правильный взгляд на жизнь.

Первая серьёзная проблема, с которой сталкиваются большинство новичков при создании HTML-страниц, связана с набором символов (англ. character set). Выражается эта проблема с кодировкой в, так называемых, «кракозябриках», которые мы получаем вместо указанных в HTML-файле символов. В данной статье я хочу остановиться на проблеме с кодировкой подробнее, постараться расставить всё по полочкам и дать варианты решения.

  • Что такое кодировка?
  • Кодировка файла (редактирование в Notepad++)
  • Кодировка отображения (просмотр в браузере)
  • Как указать кодировку HTML-страницы? (метатег charset)
  • Всё ещё есть проблема с кодировкой? (header charset в php)

Что такое кодировка?

Условно говоря, каждый символ (знак) состоит из кода и картинки. Здесь код – это уникальный идентификатор символа в наборе символов, который определяется выбранной кодировкой, а картинка – это визуальное представление символа, которое содержится в файле шрифта в соответствующей коду символа ячейке.

Другими словами, кодировка (англ. charset) – это набор взаимосвязей кодов символов с их визуальными представлениями в шрифте.

Кодировка файла

HTML-страница представляет собой обычный текстовый файл, кодировка которого выбирается при его создании и/или сохранении на запоминающее устройство (жёсткий диск, флэшка и т.д.) .

В случае с Notepad++, кодировка нового документа задаётся в настройках текстового редактора. Выбираем в меню: Опции > Настройки… – и переходим на вкладку «Новый документ». Здесь нас интересует секция «Кодировка». По умолчанию, выбрана кодировка ANSI.


Настройка кодировки нового документа в Notepad++

Напомню, что это кодировка, в которой будет храниться HTML-файл.

Впрочем, Вы всегда можете преобразовать кодировку HTML-страницы, используя соответствующие функции текстового редактора. Например, в Notepad++ для этого кликните пункт меню «Кодировки» и выберите нужное преобразование.


Преобразование кодировки текущей HTML-страницы в Notepad++

В данном случае файл был в кодировке ANSI и я преобразовал его в UTF-8 (без BOM) . О том, что такое этот BOM Вы можете прочитать в моей статье: PHP: как удалить BOM в WordPress — проследовав по этой ссылке.

Кодировка отображения

Важно разделять кодировку файла и кодировку отображения. Независимо от того, в какой кодировке хранится файл, он может быть отображен и в любой другой кодировке. Это и является одной из причин проблем с кодировкой.

Например, если Вы сохранили HTML-страницу в кодировке ANSI и откроете её в браузере, вместо русских символов Вы можем получить, так называемые, «кракозябрики».


Проблемы с кодировкой отображения HTML-страницы в браузере Firefox

В данном случае нам надо убедиться, что кодировка файла совпадает с кодировкой отображения файла в браузере. Для этого в Firefox кликните иконку меню, а потом пункт «Кодировка». Если такого у Вас нет, кликните пункт «�?зменить» и добавьте элемент «Кодировка» в меню.


Смена кодировки отображения HTML-страницы в браузере Firefox

Как вы видите, браузер отображает файл в кодировке «Юникод» (например, UTF-8) , в то время как файл был сохранён в кодировке ANSI (например, Windows-1251) . Выбрав нужную кодировку, мы получим нужный нам результат.


Проблема с кодировкой решена

В случае с Notepad++ также имеется возможность выбора кодировки отображения. Для этого кликните пункт меню «Кодировки», а потом нужный вариант используемой для отображения кодировки.


Смена кодировки отображения HTML-страницы в Notepad++

В данном случае я изменил кодировку отображения ANSI на UTF-8 (без BOM) .

Как указать кодировку HTML-страницы?

�? так, мы уже разобрались с тем, что такое кодировка и в чём состоит отличие кодировки файла и кодировки отображения. Теперь нам нужно решить проблему с кодировкой, которая заключается в неправильной интерпретации браузером (или любым другим клиентом) кодировки HTML-страницы.

Почему возникают проблемы с кодировкой? Определить кодировку HTML-страницы не просто, а зачастую и не возможно, т.к. у того же браузера нет информации о ней или она указана неправильно.

Для того чтобы указать кодировку HTML-страницы используется специальный метатег. В HTML5 он имеет следующий урезанный вид:

В данном случае указана кодировка UTF-8 (Юникод) .

В более старых версиях HTML этот метатег имеет следующий вид:

Этот метатег создаёт HTTP-заголовок Content-Type , в котором указывается тип документа text/html и его кодировка Windows-1251 (ANSI) .

Лично я рекомендую использовать именно этот вариант, т.к. с ним будет меньше всего проблем. Главное чтобы такой метатег присутствовал в секции HEAD , и указанная в нём кодировка соответствовала кодировке файла. В большинстве случаев этого будет достаточно.

Всё ещё есть проблема с кодировкой?

В некоторых случаях указать метатег с кодировкой HTML-страницы будет недостаточно. Такая проблема может быть вызвана настройками самого сервера, на котором находится файл HTML-страницы. Дело в том, что сервер способен выдавать свой HTTP-заголовок Content-Type , который будет, условно говоря, иметь приоритет перед метатегом.

В данном случае эту проблему можно решить путём внесения изменений в настройки сервера. Я не буду вдаваться в детали данного вопроса и порекомендую лишь отключать всю эту перекодировку через файл .htaccess, например:

Также можно производить изменения HTTP-заголовка Content-Type и программными средствами. В том же PHP для этого используется функция header() , например:

8 декабря 2016 г., 19:56 Удалить комментарий

Я так понимаю, вот я в программе создаю html страницу. Если я в тексте напишу хотя бы один английский символ, то кодировка автоматически станет Юникод?

А в браузере по умолчанию отображаются все страницы в ANSI, поэтому мой файл в Юникоде как раз и будет с кракозябрами?

15 февраля 2017 г., 11:57 Удалить комментарий

Буквы на английском имеют одинаковые коды во всех кодировках, так что с ними проблем не возникает, а вот с той же кириллицей могут быть проблемы.

По сути, действительно, если использовать только буквы на английском, то кодировка часто определяется браузерами как «Кириллица (Windows)» или тип того, просто он не может распознать кодировку не имея «нестандартных» символов.

Впрочем, даже если есть символы и прописан meta тег, не факт, что браузер поймёт в как отображать страницу, т.к. в основном ориентируется на http заголовки сервера.

15 февраля 2017 г., 18:25 Удалить комментарий

спасибо огромное за полезную статью.
но у меня остался таки вопрос. как изменить кодировку по умолчанию в браузере firefox я поняла,зашла в настройки, а там нет нужного мне юникода. файлы создаю в нотепаде++ с юникодом. посоветуйте пожалуйста, как поступить в моем случае. писать в кириллице,чтобы совпадало с фаерфоксом? либо как. а вообще хотела использовать юникод везде))

Автор статьи: Сергей Каминский

При создании сайта у начинающих веб-мастеров часто появляются вопросы: в какой кодировке делать сайт, чем отличается UTF-8 от windows-1251 и как ее прописывать в META Charset HTML-страницы сайта. Ответы на все эти вопросы в данной статье.

Что такое кодировка сайта и как она работает

Кодировку можно представить в виде таблицы, состоящей из разных букв, цифр и других символов понятных человеку, которые закодированы определенным образом. Когда вы открываете текстовый файл, к которым относятся в том числе HTML-страницы, то компьютер считывает из заголовка файла в какой кодировке он был сохранен и выводит текст в соответствующей кодировке преобразовывая компьютерные данные в вид понятный человеку сопоставляя эти данные с таблицей кодировки. Если информация о кодировке из заголовка файла совпадает с кодировкой в которой сохранены данные в HTML-странице, то пользователь видит привычные ему буквы, цифры и другие символы. Если же есть несовпадение, то в результате пользователю выводится непонятный набор символов, особенно часто это происходит в старых почтовых программах. Если пользователь получил письмо с непонятными крякозябрами, то просто перебирая разные кодировки, обычно получается угадать и выбрать ту, в которой написано письмо, и в результате непонятный набор символов превращается в понятный человеку текст.

То же самое происходит и с HTML-страницами сайта. Если документ был сохранен, например, в кодировке UTF-8, а в самом документе прописан META-тег указывающий что это кодировка windows-1251, то браузер опять же будет сопоставлять сохраненные в файле данные с таблицей указанной ему кодировки и так как символы закодированы по-разному, то браузер выведет вместо привычного текста непонятный набор символов или же часть букв может быть в нормальном виде, а другие буквы или символы могут выводиться, например, в виде знаков вопроса. Все выше сказанное относится в том числе и к отображению имен файлов.

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

Самые распространенные кодировки

Из предыдущего пункта вы уже знаете что такое кодировка и почему настолько важно правильно прописать ее в коде страниц сайта. Давайте теперь выясним какую из множества кодировок лучше выбрать для будущего сайта. Поскольку самой распространенной и наиболее понятной в освоении всегда была операционная система Windows, то большинство веб-разработчиков создавали HTML-страницы в кодировке windows-1251 (ANSI), которая использовалась по-умолчанию. Но windows-1251 поддерживает не очень большое количество букв и символов, а разработчики хотят использовать в своих текстах различные стрелочки, сердечки, квадратики и другие символы, в том числе есть необходимость совмещать слова из разных языков в одном документе, поэтому на смену ей уже давно пришла более расширенная UTF-8 и большинство разработчиков используют именно эту кодировку.

Проблемы с кодировкой не только в HTML-странице

Сайт, независимо от того является ли он просто набором статических HTML-документов или сложных динамических скриптов генерирующих страницы на лету, размещается на веб-сервере, который также работает с определенной кодировкой. И если сервер выдает информацию в одной кодировке, а ваши страницы или скрипты сохранены в другой кодировке, то опять же могут быть проблемы с отображением страниц в браузере пользователя. Многие хостинги позволяют менять настройки и выбрать кодировку в соответствии с той, которая используется в файлах сайта, через панель управления или же прописать ее в файле .htaccess, если на хостинге используется популярный веб-сервер Apache.

Практически ни один современный сайт не обходится без использования базы данных MySQL и она также может стать источником проблем с кодировкой. Если файлы сайта сохранены в одной кодировке, а информация в базе данных в другой, то на странице та часть информации, которая выводится из базы данных может отображаться в виде все тех же знаков вопросов или других непонятных символов. Чтобы избежать проблем с кодировкой она должна быть одинаковой для веб-сервера, базы данных MySQL, в скриптах, в HTML-страницах сайта и в META-теге, который прописывается в HTML-коде. Если есть проблемы с отображением текста, то проверяйте на наличие проблемы все выше перечисленное.

META Charset HTML-документа

Чтобы сообщить браузеру и поисковым системам в какой кодировке сохранены страницы сайта в их коде прописывается META Charset.

Для кодировки windows-1251:

Для кодировки UTF-8:

Теперь вы знаете что такое кодировка сайта и где искать проблемы если в какой-либо части сайта неправильно отображается текст.

Другие записи по теме в разделе статьи по HTML и CSS

Как поменять кодировку текста в Word

Набор символов, которые мы видим на экране при открытии документа, называется кодировкой. Когда она выставлена неправильно, вместо понятных и привычных букв и цифр вы увидите бессвязные символы. Эта проблема часто возникала на заре развития технологий, но сейчас текстовые процессоры умеют сами автоматически выбирать подходящие комплекты. Свою роль сыграло появление и развитие utf-8, так называемого Юникода, в состав которого входит множество самых разных символов, в том числе русских. Документы в такой кодировке не нуждаются в смене и настройке, так как показывают текст правильно по умолчанию.

Современные текстовые редакторы определяют кодировку при открытии документа

С другой стороны, такая ситуация всё же иногда случается. И получить нечитаемый документ очень досадно, особенно если он важный и нужный. Как раз для таких случаев в Microsoft Word есть возможность указать для текста кодировку. Это вернёт его в читаемый вид.

Принудительная смена

Если вы получили из какого-то источника текстовый файл, но не можете прочитать его содержимое, то нужна операция ручной смены кодировки. Для этого зайдите в раздел «Сведения» во вкладке «Файл». Тут собраны глобальные настройки распознавания и отображения, и если вы будете изменять их в открытом документе, то для него они станут индивидуальными, а для остальных — не изменятся. Воспользуемся этим. В разделе «Дополнительно» появившегося окна находим заголовок «Общие» и ставим галочку «Подтверждать преобразование файлов при открытии». Подтвердите изменения и закройте Word. Теперь откройте документ снова, как бы применяя настройки, и перед вами появится окно преобразования файла. В нём будет список возможных форматов, среди которых находим «Кодированный текст», и получим следующий диалог.

В этом новом окне будет три переключателя. Первый, по умолчанию, — это CP-1251, кодировка Windows. Второй — MS-DOS. Нам нужен третий пункт — ручной выбор, справа от него перечислены разнообразные наборы символов. Но, как правило, пользователь не знает, какими символами был набран текст предыдущим автором, поэтому в нижней части этого окна есть поле под названием «Образец», в котором фрагмент из текста будет в реальном времени отображаться при выборе того или иного комплекта символов. Это очень удобно, потому что не нужно каждый раз закрывать и отрывать документ снова, чтобы подобрать нужную.

Перебирая варианты по одному и глядя на текст в поле образцов, выберите ту кодировку, при которой символы будут русскими. Но обратите внимание, что это ещё ничего не значит, — внимательно смотрите, чтобы они складывались в осмысленные слова. Дело в том, что для русского языка есть не одна кодировка, и текст в одной из них не будет отображаться корректно в другой. Так что будьте внимательны.

Нужно сказать, что с файлами, сделанными на современных текстовых процессорах, крайне редко возникают подобные проблемы. Однако есть ещё и такой бич современного информационного общества, как несовместимость форматов. Дело в том, что существует целый ряд текстовых редакторов, и каждым кто-то пользуется. Возможно, для кого-то не нужна функциональность Ворда, кто-то не считает нужным за него платить и т. п. Причин может быть множество.

Если при сохранении документа автор выбрал формат, совместимый в MS Word, то проблем возникнуть не должно. Но так бывает нечасто. Например, если текст сохранён с расширением .rtf, то диалог выбора кодировки отобразится перед вами сразу же при открытии текста. А вот форматы другого популярного текстового процессора OpenOffice Ворд даже не откроет, поэтому, если им пользуетесь, не забывайте выбирать пункт «Сохранить как», когда отправляете файл пользователю Office.

Сохранение с указанием кодировки

У пользователя может возникнуть ситуация, когда он специально указывает определённую кодировку. Например, такое требование ему предъявляет получатель документа. В этом случае нужно будет сохранить документ как обычный текст через меню «Файл». Смысл в том, что для заданных форматов в Ворде есть привязанные глобальными системными настройками кодировки, а для «Обычного текста» такой связи не установлено. Поэтому Ворд предложит самостоятельно выбрать для него кодировку, показав уже знакомое нам окно преобразования документа. Выбирайте для него нужную вам кодировку, сохраняйте, и можно отправлять или передавать этот документ. Как вы понимаете, конечному получателю нужно будет сменить в своём текстовом редакторе кодировку на такую же, чтобы прочитать ваш текст.

Заключение

Вопрос смены кодировки в Вордовских документах перед рядовыми пользователями встаёт не так уж часто. Как правило, текстовый процессор может сам автоматически определить требуемый для корректного отображения набор символов и показать текст в читаемом виде. Но из любого правила есть исключения, так что нужно и полезно уметь сделать это самому, благо, реализован процесс в Word достаточно просто.

То, что мы рассмотрели, действительно и для других программ из пакета Office. В них также могут возникнуть проблемы из-за, скажем, несовместимости форматов сохранённых файлов. Здесь пользователю придётся выполнить всё те же действия, так что эта статья может помочь не только работающим в Ворде. Унификация правил настройки для всех программ офисного пакета Microsoft помогает не запутаться в них при работе с любым видом документов, будь то тексты, таблицы или презентации.

Напоследок нужно сказать, что не всегда стоит обвинять кодировку. Возможно, всё гораздо проще. Дело в том, что многие пользователи в погоне за «красивостями» забывают о стандартизации. Если такой автор выберет установленный у него шрифт, наберёт с его помощью документ и сохранит, у него текст будет отображаться корректно. Но когда этот документ попадёт к человеку, у которого такой шрифт не установлен, то на экране окажется нечитаемый набор символов. Это очень похоже на «слетевшую» кодировку, так что легко ошибиться. Поэтому перед тем как пытаться раскодировать текст в Word, сначала попробуйте просто сменить шрифт.

полезная информация и краткая ретроспектива

  • Главная
  • ->
  • Материалы
  • ->
  • Кодировки: полезная информация и краткая ретроспектива

Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Перейти на сайт->

Бесплатный Курс «Практика HTML5 и CSS3»

Освойте бесплатно пошаговый видеокурс

по основам адаптивной верстки

на HTML5 и CSS3 с полного нуля.

Начать->

Фреймворк Bootstrap: быстрая адаптивная вёрстка

Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.

Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.

Верстайте на заказ и получайте деньги.

Получить в подарок->

Бесплатный курс «Сайт на WordPress»

Хотите освоить CMS WordPress?

Получите уроки по дизайну и верстке сайта на WordPress.

Научитесь работать с темами и нарезать макет.

Бесплатный видеокурс по рисованию дизайна сайта, его верстке и установке на CMS WordPress!

Получить в подарок->

*Наведите курсор мыши для приостановки прокрутки.

Назад Вперед


Кодировки: полезная информация и краткая ретроспектива

Данную статью я решил написать как небольшой обзор, касающийся вопроса кодировок.

Мы разберемся, что такое вообще кодировка и немного коснемся истории того, как они появились в принципе.

Мы поговорим о некоторых их особенностях а также рассмотрим моменты, позволяющие нам работать с кодировками более осознанно и избегать появления на сайте так называемых кракозябров, т.е. нечитаемых символов.

Итак, поехали…

Что такое кодировка?

Упрощенно говоря, кодировка — это таблица сопоставлений символов, которые мы можем видеть на экране, определенным числовым кодам.

Т.е. каждый символ, который мы вводим с клавиатуры, либо видим на экране монитора, закодирован определенной последовательностью битов (нулей и единиц). 8 бит, как вы, наверное, знаете, равны 1 байту информации, но об этом чуть позже.

Внешний вид самих символов определяется файлами шрифтов, которые установлены на вашем компьютере. Поэтому процесс вывода на экран текста можно описать как постоянное сопоставление последовательностей нулей и единиц каким-то конкретным символам, входящим в состав шрифта.

Прародителем всех современных кодировок можно считать ASCII.

Эта аббревиатура расшифровывается как American Standard Code for Information Interchange (американская стандартная кодировочная таблица для печатных символов и некоторых специальных кодов).

Это однобайтовая кодировка, в которую изначально заложено всего 128 символов: буквы латинского алфавита, арабские цифры и т.д.

Позже она была расширена (изначально она не использовала все 8 бит), поэтому появилась возможность использовать уже не 128, а 256 (2 в 8 степени) различных символов, которые можно закодировать в одном байте информации.

Такое усовершенствование позволило добавлять в ASCII символы национальных языков, помимо уже существующей латиницы.

Вариантов расширенной кодировки ASCII существует очень много по причине того, что языков в мире тоже немало. Думаю, что многие из вас слышали о такой кодировке, как KOI8-R — это тоже расширенная кодировка ASCII, предназначенная для работы с символами русского языка.

Следующим шагом в развитии кодировок можно считать появление так называемых ANSI-кодировок.

По сути это были те же расширенные версии ASCII, однако из них были удалены различные псевдографические элементы и добавлены символы типографики, для которых ранее не хватало «свободных мест».

Примером такой ANSI-кодировки является всем известная Windows-1251. Помимо типографических символов, в эту кодировку также были включены буквы алфавитов языков, близких к русскому (украинский, белорусский, сербский, македонский и болгарский).

ANSI-кодировка — это собирательное название. В действительности, реальная кодировка при использовании ANSI будет определяться тем, что указано в реестре вашей операционной системы Windows. В случае с русским языком это будет Windows-1251, однако, для других языков это будет другая разновидность ANSI.

Как вы понимаете, куча кодировок и отсутствие единого стандарта до добра не довели, что и стало причиной частых встреч с так называемыми кракозябрами — нечитаемым бессмысленным набором символов.

Причина их появления проста — это попытка отобразить символы, закодированные с помощью одной кодировочной таблицы, используя другую кодировочную таблицу.

В контексте веб-разработки, мы можем столкнуться с кракозябрами, когда, к примеру, русский текст по ошибке сохраняется не в той кодировке, которая используется на сервере.

Разумеется, это не единственный случай, когда мы можем получить нечитаемый текст — вариантов тут масса, особенно, если учесть, что есть еще база данных, в которой информация также хранится в определенной кодировке, есть сопоставление соединения с базой данных и т.д.

Возникновение всех этих проблем послужило стимулом для создания чего-то нового. Это должна была быть кодировка, которая могла бы кодировать любой язык в мире (ведь с помощью однобайтовых кодировок при всем желании нельзя описать все символы, скажем, китайского языка, где их явно больше, чем 256), любые дополнительные спецсимволы и типографику.

Одним словом, нужно было создать универсальную кодировку, которая решила бы проблему кракозябров раз и навсегда.

Юникод — универсальная кодировка текста (UTF-32, UTF-16 и UTF-8)

Сам стандарт был предложен в 1991 году некоммерческой организацией «Консорциум Юникода» (Unicode Consortium, Unicode Inc.), и первым результатом его работы стало создание кодировки UTF-32.

Кстати, сама аббревиатура UTF расшифровывается как Unicode Transformation Format (Формат Преобразования Юникод).

В этой кодировке для кодирования одного символа предполагалось использовать аж 32 бита, т.е. 4 байта информации. Если сравнивать это число с однобайтовыми кодировками, то мы придем к простому выводу: для кодирования 1 символа в этой универсальной кодировке нужно в 4 раза больше битов, что «утяжеляет» файл в 4 раза.

Очевидно также, что количество символов, которое потенциально могло быть описано с помощью данной кодировки, превышает все разумные пределы и технически ограничено числом, равным 2 в 32 степени. Понятно, что это был явный перебор и расточительство с точки зрения веса файлов, поэтому данная кодировка не получила распространения.

На смену ей пришла новая разработка — UTF-16.

Как очевидно из названия, в этой кодировке один символ кодируют уже не 32 бита, а только 16 (т.е. 2 байта). Очевидно, это делает любой символ вдвое «легче», чем в UTF-32, однако и вдвое «тяжелее» любого символа, закодированного с помощью однобайтовой кодировки.

Количество символов, доступное для кодирования в UTF-16 равно, как минимум, 2 в 16 степени, т.е. 65536 символов. Вроде бы все неплохо, к тому же окончательная величина кодового пространства в UTF-16 была расширена до более, чем 1 миллиона символов.

Однако и данная кодировка до конца не удовлетворяла потребности разработчиков. Скажем, если вы пишете, используя исключительно латинские символы, то после перехода с расширенной версии кодировки ASCII к UTF-16 вес каждого файла увеличивался вдвое.

В результате, была предпринята еще одна попытка создания чего-то универсального, и этим чем-то стала всем нам известная кодировка UTF-8.

UTF-8 — это многобайтовая кодировка с переменной длинной символа. Глядя на название, можно по аналогии с UTF-32 и UTF-16 подумать, что здесь для кодирования одного символа используется 8 бит, однако это не так. Точнее, не совсем так.

Дело в том, что UTF-8 обеспечивает наилучшую совместимость со старыми системами, использовавшими 8-битные символы. Для кодирования одного символа в UTF-8 реально используется от 1 до 4 байт (гипотетически можно и до 6 байт).

В UTF-8 все латинские символы кодируются 8 битами, как и в кодировке ASCII. Иными словами, базовая часть кодировки ASCII (128 символов) перешла в UTF-8, что позволяет «тратить» на их представление всего 1 байт, сохраняя при этом универсальность кодировки, ради которой все и затевалось.

Итак, если первые 128 символов кодируются 1 байтом, то все остальные символы кодируются уже 2 байтами и более. В частности, каждый символ кириллицы кодируется именно 2 байтами.

Таким образом, мы получили универсальную кодировку, позволяющую охватить все возможные символы, которые требуется отобразить, не «утяжеляя» без необходимости файлы.

C BOM или без BOM?

Если вы работали с текстовыми редакторами (редакторами кода), например Notepad++, phpDesigner, rapid PHP и т.д., то, вероятно, обращали внимание на то, что при задании кодировки, в которой будет создана страница, можно выбрать, как правило, 3 варианта:

— ANSI
— UTF-8
— UTF-8 без BOM

Сразу скажу, что выбирать всегда стоит именно последний вариант — UTF-8 без BOM.

Итак, что же такое BOM и почему нам это не нужно?

BOM расшифровывается как Byte Order Mark. Это специальный Unicode-символ, используемый для индикации порядка байтов текстового файла. По спецификации его использование не является обязательным, однако если BOM используется, то он должен быть установлен в начале текстового файла.

Не будем вдаваться в детали работы BOM. Для нас главный вывод следующий: использование этого служебного символа вместе с UTF-8 мешает программам считывать кодировку нормальным образом, в результате чего возникают ошибки в работе скриптов.

Поэтому, при работе с UTF-8 используйте именно вариант «UTF-8 без BOM». Также лучше не используйте редакторы, в которых в принципе нельзя указать кодировку (скажем, Блокнот из стандартных программ в Windows).

Кодировка текущего файла, открытого в редакторе кода, как правило, указывается в нижней части окна.

Обратите внимание, что запись «ANSI as UTF-8» в редакторе Notepad++ означает то же самое, что и «UTF-8 без BOM». Это одно и то же.



В программе phpDesigner нельзя сразу точно сказать, используется BOM, или нет. Для этого нужно кликнуть правой кнопкой мыши по надписи «UTF-8», после чего во всплывающем окне можно увидеть, используется ли BOM (опция Save with BOM).


В редакторе rapid PHP кодировка UTF-8 без BOM обозначается как «UTF-8*».

Как вы понимаете, в разных редакторах все выглядит немного по-разному, однако главную идею вы поняли.

После того, как документ сохранен в UTF-8 без BOM, нужно также убедиться, что верная кодировка указана в специальном метатэге в секции head вашего html-документа:



<meta charset = "utf-8" />


Соблюдение этих простых правил уже позволит вам избежать многих пробелем с кодировками.

На этом все, надеюсь, что данный небольшой экскурс и пояснения помогли вам лучше понять, что такое кодировки, какие они бывают и как работают.

Если вам интересна эта тема с более прикладной точки зрения, то рекомендую вам изучить мой видеоурок Полный UTF-8: чеклист для начинающих.

Дмитрий Науменко.

P.S. Присмотритесь к премиум-урокам по различным аспектам сайтостроения, а также к бесплатному курсу по созданию своей CMS-системы на PHP с нуля. Все это поможет вам быстрее и проще освоить различные технологии веб-разработки.

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!


Смотрите также:

Наверх

Как разработать кириллическую HTML-страницу

Как разработать кириллическую HTML-страницу

Как разработать кириллическую HTML-страницу

На этой странице объясняется, как разработчик может создать файл .html с кириллическим текстом внутри.

Примечание. Английский алфавит как частный случай (отличный от немецкого).
Кириллический набор символов, как и любой другой набор символов в мире (Японский, китайский, центральноевропейский и др.) содержит, помимо национальной символики, набор символов называется ASCII — в каждой устаревшей кодировке символы ASCII занимают первые 128 позиций таблицы кодировок, а национальные буквы занимают вторую половину таблицы.

Символы ASCII (например, знаки препинания и т. Д.) Включают также английский алфавит .
То есть английские буквы являются частью набора символов кириллицы!

Таким образом, наличие веб-страницы с русскими и английскими буквами означает, что , а не , означает, что у вас есть многоязычная страница .Нет, на этой странице используется одна кодировка кириллицы, и эта кодировка содержит английский язык. буквы (точнее — символы ASCII).

Другой случай: реальные многоязычных страниц, где, скажем, русские буквы должны сочетаться с немецкими буквы либо польские, либо японские.
Этот случай описан на другой странице моего сайта — «Как разработать многоязычную HTML-страницу»

То есть эта статья — о создании кириллической (например, русской) веб-страницы, т.е.е. Интернет страница, которая объявляет себя кириллицей (указана кириллица).

Очень разных сценариев : когда вы хотите создать не кириллическую веб-страницу (например, Страница западноевропейской кодировки) и просто поместите туда пару русских слов —
это НЕ рассматривается здесь, это описано в другой статье , одна упомянута выше —
«Как разработать многоязычную HTML-страницу»

Шрифт создан для определенной кодировки, и поскольку каждая кодировка содержит ASCII, каждый шрифт в мире также содержит ASCII.Итак, любой кириллический шрифт содержит английских букв.


Чтобы создать кириллический (или кириллица + английский) HTML-файл, то есть текст с одним набором символов, разработчик просто пишет немного кириллического (+ английского) текста при использовании кириллического шрифта и соответствующий режим клавиатуры.

Большинство русскоязычных веб-страниц (более 90% наверняка) в настоящее время выполнены в кодировке Windows-1251 a.k.а. «Кириллица (Windows)», просто потому, что большинство авторов в настоящее время работают под MS Windows, а 1251 — это то, что Microsoft использует для кириллицы, поэтому встроенные шрифты Windows Cyrillic и клавиатура инструменты предназначены для кодирования Windows-1251.
Поэтому гораздо проще набрать текст в кодировке «Кириллица (Windows-1251)» в текстовом редакторе Windows. чем набирать текст в кодировке «Кириллица (KOI8-R)».
Набрать текст в кодировке «Кириллица, ISO-8859-5» под MS Windows практически невозможно.

Но на самом деле , а не , имеет значение, какую кодировку использовал автор — основные браузеры отлично работают с все кодировок кириллицы, и если веб-страница сделана правильно (ниже), она будет отображаться конечному пользователю тоже правильно. Последняя часть этой страницы обсуждает создание страницы KOI8-R — на всякий случай.

Как написать по-русски с помощью шрифтов и клавиатуры — с индикатором «RU» на панели задач — объясняется в «Введение.Кириллица в Windows » раздел моего сайта «Кириллица (русская): инструкция для Windows и Интернета»

Если кириллица написана правильно, то конечный пользователь сможет прочитать эту страницу, например, переключившись на кириллицу в браузере (например, View / Encoding / Cyrillic (Windows) или Просмотр / Кодирование / Кириллица (KOI8-R) в Internet Explorer) если на странице не указана ее кодировка.

Примечание. Кириллица в странице TITLE
Если вы или ваши будущие читатели работаете под нерусской Windows, то это , а не . хорошая идея использовать кириллические буквы в заголовке вашей страницы
(текст внутри HTML-тегов и).

Например, MS Internet Explorer вер. 5 и выше (а также Netscape версии 7.1 и выше и Mozilla версии 1.4 и выше)
может отображать такой заголовок только под Windows 2000 / XP и не может под Windows 95/98 / ME / NT, а Netscape 4.x — 7.0x вообще не сможет этого сделать.

Вот моя тестовая страница (написана действительно для выпуска закладок в Netscape — это текст заголовка который идет в закладки) , который объясняет это:
«Заголовок с текстом, отличным от системной кодовой страницы Windows»


Теперь давайте рассмотрим некоторые методы создания текста HTML с русским языком.

1. Текстовые редакторы — код разработчика HTML вручную

В таком случае все, что нужно сделать разработчику, — это выбрать кириллический шрифт в качестве рабочего шрифта в простом тексте. редактор, которым он пользуется.Переведите клавиатуру в режим «RU» и начните печатать.
Вот и все. Зная, как использовать шрифты и клавиатуру, чтобы писать по-русски, это разработчик просто вводит содержимое HTML-файла — текст и теги.

Я лично использую очень хороший условно-бесплатный текстовый редактор. UltraEdit очень подходит для HTML.
Он использует цвет для HTML-тегов, а также позволяет мне создавать свои собственные макросы. Например, Я нажимаю Ctrl / L и сразу вижу в тексте следующую конструкцию:

 

Все, что мне нужно сделать, чтобы начать писать кириллический HTML, — это выбрать кириллический шрифт, например:
Просмотр / установка шрифта — «Courier New», шрифт — «Cyrillic»

Теперь, переключаясь между «EN» и «RU», я могу писать теги HTML и немного англо-русского контента.

2. WYSIWYG HTML-редактор — создает HTML-текст для вас

Если вы работаете с каким-либо редактором WYSIWYG HTML (который записывает HTML-код / ​​теги будущей веб-страницы для вас молча, «за кадром»), то вы должны узнать, как для создания таких кириллических (+ английских) файлов HTML —
распространенная проблема — когда автор делал , а не , настраивал редактор для Кириллица до , начало разработки и, следовательно, HTML-файл создается как файл « Western »
(charset = windows-1252 или charset = iso-8859-1 или charset = us-ascii)
а не как страница « Cyrillic » (ф.е. кодировка = windows-1251).

Обычно в таком случае бывает , нет кириллица. буквы в этом HTML-файле — только объекты SGML, такие как & aacute; или некоторые числовые коды, например & # 1076; — вместо букв кириллицы.
В вашем браузере, когда вы делаете View / Source для такой страницы, есть нет читаемого русского текста — явный признак того, что эта кириллическая страница была неправильно написана .

Кроме того, вверху такой некорректно разработанной страницы «Кириллица» можно было увидеть, что он помечен как «Western», потому что в нем есть строка
Как настроить редактор WYSIWYG HTML для создания правильного Кириллического HTML

Каждый HTML-редактор WYSIWYG требует уникальной настройки для кириллицы, и разработчик должен выяснить это до того, как начнет писать код. Некоторые редакторы может вообще не работать с кириллицей …

Ниже приведены инструкции по настройке для некоторых редакторов WYSIWYG HTML.

Важно. После вы читаете инструкцию по настройке для выбранного вами редактора, сделать , а не , забыть прочесть общий (применимо для любого редактора) «Заключительные примечания для кириллицы HTML» часть этой страницы, в которой перечислено около распространенных ошибок, которые совершают человек в результате страница становится нечитаемой для некоторых читателей.

Я лично пробовал шаги настройки кириллицы только для следующих редакторов WYSIWYG HTML:

  • Netscape Composer
  • MS Front Page 2000
  • MS Word 97 и MS Word 2000 (настройка Word XP , вероятно, такая же, как и для Word 2000)

Есть еще пара редакторов, которые я видел , а не , но нашел шаги по настройке в Интернете:


Вот инструкции по настройке (на примере кодировки кириллицы (Windows-1251)):

  • MS Передняя страница 2000

    Откройте новый документ и сразу укажите, что вы создаете Cyrillic Текст HTML, а не западный:

    • Файл / Свойства / Язык
    • В обоих полях раздела «Кодировка HTML» укажите «Кириллица»
      (что на самом деле означает «Кириллица, Windows-1251»)

    Это будет гарантировать, что, когда вы не введете текст, будут представлены кириллические буквы. правильно — как обычные буквы, а не какие-то числовые значения.

    Front Page 2000 вставит следующую строку вверху исходного HTML-кода:
    fontgroup = «Кириллица» winfontcharset = 204
    macfontscript = 7 filename = «iso88595.xml» /> «

  • Теперь вставьте перед строку, указанную выше, следующую строку («приклейте» текст ниже в на одну строку ):
    « charset = «windows-1251» fontgroup = «Cyrillic» winfontcharset = 204
    macfontscript = 7 filename = «Win1251.xml «/>»

Примечание. Насколько я слышал, есть проблема с загрузкой в новая версия Dreamweaver некоторые файлы, которые были , а не , были созданы с использованием вышеуказанного rules, и поэтому , а не , содержится внутри строки спецификации кодирования .
То есть Dreamweaver не знает, что это кириллический файл. Так что на кириллице компьютер, скажем, западный, такой файл загружается как файл западной кодировки и теперь он поврежден.
Обходной путь — это (опубликовано В.Зиновьевым в Группа новостей macromedia.dreamweaver) :

  • после загрузки такого файла перейдите в Modify / Page properties / Title / Encoding.
  • выберите там «Кириллица (Windows)» (или в любой другой кодировке, в которой, по вашему мнению, находится этот файл)
  • нажмите «Обновить»

Теперь файл будет перезагружен с указанной кодировкой, и DW будет теперь знаю, что такое кодировка.

Важно! Если вы НЕ набираете русский текст прямо в Dreamwever но вместо этого вы копируете текст, скажем, из MS Word, тогда вы можете столкнуться с проблемой:
вы получите просто набор вопросительных знаков — ??? вместо русского текста в результате копирования / вставки.
В таком случае см. Решения в главе 2 «Копирование / вставка». раздела «Юникод и кириллица» на моем сайте.
Вот прямая ссылка на эту главу:
«Unicode: проблемы копирования / вставки».

  • MS Word 2000 (Word XP , вероятно, работает так же)
    , а не рекомендуется использовать Word для создания HTML-файла, поскольку Word создает для вас HTML-код, содержащий множество ненужных HTML-тегов, файл большой и т. д.
    Но в любом случае вот как это сделать в Word 2000.
    Есть два разных сценария: либо вы создаете новый текст HTML, либо конвертируете существующий.документ в .html.

    1. Создание нового текста HTML

    • Файл / Новый / Веб-страница
    • Сообщите Word сразу, что вы создаете файл HTML Cyrillic
      перейдите в Инструменты / Параметры и:
      • в окне вкладки «Общие» нажмите кнопку «Параметры Интернета»
      • в окне «Параметры Интернета» перейдите на вкладку «Кодировка»
      • выберите «Кириллица (Windows)» в списке «Сохранить этот документ как»
    • Теперь вы можете печатать кириллицей
    • Файл / Сохранить как.Не используйте русский язык в имени файла.
      Нажмите на кнопку «Заголовок». в диалоговом окне File / SaveAs, чтобы при необходимости изменить заголовок — это , а не — хорошая идея использовать кириллицу в заголовке веб-страницы.

    Вновь созданный HTML-файл будет содержать внутри обычные буквы кириллического алфавита, а также Word. вставляет следующую строку вверху HTML-кода (вы можете увидеть это, используя Просмотр / HTML-код):
    Заключительные замечания относительно правильного Кириллица HTML

    После того, как вы разработали кириллическую HTML-страницу «вручную» (с помощью текстового редактора и набирая HTML-код / ​​теги самостоятельно) или позволяя редактору WYSIWYG HTML писать HTML-код / ​​теги за вас, Вам необходимо убедиться, что эта кириллическая веб-страница будет читаемой для любого конечного пользователя.
    Вот несколько распространенных ошибок, которые допускает разработчик, из-за чего страница нечитаемые для некоторых пользователей (в зависимости от их браузера и / или типа компьютера).

    Первые два уже упоминались выше, но стоит перечислить здесь и все в одном месте.

    Вам необходимо проверить исходный HTML-код, созданный для вас редактором WYSIWYG HTML, чтобы убедиться, что вы не совершали типичных ошибок, перечисленных ниже.
    Вы можете проверить исходный HTML-текст с помощью опции View / Source вашего браузера, редактора HTML или открытием.html в текстовом редакторе, который позволяет вам просматривать простой текст Cyrillic — HTML-текст — это простой текст, такой же, как в файле .TXT.

    Ошибка 1. Кириллица в HTML-тексте не содержит обычных букв кириллического алфавита.
    Обычно это происходит, когда автор использует какой-нибудь WYSIWYG HTML-редактор, который был настроен на , а не на . создание HTML-текста Cyrillic .
    В результате View / Source будет показывать на странице следующее вместо кириллицы письма:

    • Субъекты SGML, такие как & aacute;
      или
    • числовые коды (значения Unicode), например & # 1076;

    Ошибка 2. Страница объявляется как «западноевропейская», а не как «кириллица».
    То есть кодировка Значение (кодировка) для этой страницы не кириллическое. (например, windows-1251 ), но «Western» — iso-8859-1 или windows-1252 или us-ascii .

    Значение набора символов (кодировки) может быть установлено либо в заголовке HTTP, отправленном веб-сервером. в браузер вместе с самой страницей или в «теле» HTML-текста этой страницы, в его части заголовка, например

    Примечание. Создание страницы

    КОИ8-Р .

    Хотя в настоящее время большинство русскоязычных веб-страниц имеют кодировку кириллицы (Windows-1251), одна мог разработать русскую страницу в кодировке кириллицы ( KOI8-R ).

    Как было объяснено в разделе «Кириллические шрифты и кодировки» раздел моего сайта «Кириллица (русская): инструкции для Windows и Интернета»,

    современные приложения, такие как Netscape 4 + / Mozilla, Internet Explorer, Front Page 2000 и т. д.позволяют пользователю работать с родным для MS Windows набором шрифтов и клавиатурных инструментов — кодирования «Кириллица (Windows-1251)» и обработать KOI8-R автоматически , без KOI8-R шрифты и инструменты клавиатуры.

    Для разработчика кириллической HTML-страницы это означает следующее:

    • разработчик вводит текст будущей страницы KOI8-R, используя шрифты Windows-1251, такие как «Arial (Cyrillic)» и инструменты клавиатуры Windows-1251 («RU» на панели задач), так что то, что он / она действительно имеет в окне редактора, — это текст Windows-1251 (или Unicode), а не текст KOI8-R
    • Но если в качестве кодировки для этого HTML-файла был указан KOI8-R, то современные Редакторы WYSIWYG HTML незаметно «за кулисами» конвертируют текст из Windows-1251 — KOI8-R и поместите текст KOI8-R на жесткий диск в формате.HTML
      Они также поместят следующую строку вверху HTML-текста:
      Коды HTML для символов греческого языка

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

      В приведенный ниже список включены коды HTML, необходимые для использования греческих символов, которые не входят в стандартный набор символов и не встречаются на клавишах клавиатуры. Не все браузеры поддерживают все эти коды (в основном, старые браузеры могут вызывать проблемы; новые браузеры подойдут), поэтому обязательно проверьте свои HTML-коды перед их использованием.

      Некоторые греческие символы могут быть частью набора символов Unicode, поэтому вам необходимо указать это в заголовке ваших документов:

      
       
      data-type = «code»>

      Вот различные символы, которые вам могут понадобиться.

      Дисплей Товарный код Десятичный код Шестнадцатеричный код Описание
      Α и альфа; & # 913; & # x391; Капитал Альфа
      α & альфа; & # 945; & # x3b1; Строчная Альфа
      Β и бета; & # 914; & # x392; Capital Beta
      β и бета; & # 946; & # x3B2; Строчная бета
      Γ и гамма; & # 915; & # x393; Capital Gamma
      γ & гамма; & # 947; & # x3B3; Гамма в нижнем регистре
      Δ и Дельта; & # 916; & # x394; Capital Delta
      δ & дельта; & # 948; & # x3B4; Дельта строчная
      Ε и Эпсилон; & # 917; & # x395; Капитал Эпсилон
      ε & epsilon; & # 949; & # x3B5; Строчная Epsilon
      Ζ и Зета; & # 918; & # x396; Capital Zeta
      ζ и дзета; & # 950; & # x3B6; Строчная Zeta
      Η & Eta; & # 919; & # x397; Capital Eta
      η & eta; & # 951; & # x3B7; Строчная Eta
      Θ и Theta; & # 920; & # x398; Капитал Тета
      θ & theta; & # 952; & # x3B8; Строчная Тета
      Ι и йота; & # 921; & # x399; Капитал Йота
      ι и йота; & # 953; & # x3B9; Строчная Йота
      Κ и Каппа; & # 922; & # x39A; Капитал Каппа
      κ и каппа; & # 954; & # x3BA; Каппа строчная
      Λ и лямбда; & # 923; & # x39B; Заглавная лямбда
      λ & лямбда; & # 955; & # x3BB; Лямбда в нижнем регистре
      Μ и Mu; & # 924; & # x39C; Capital Mu
      мкм & mu; & # 956; & # x3BC; Строчная Mu
      Ν и Nu; & # 925; & # x39D; Capital Nu
      ν & nu; & # 957; & # x3BD; Nu строчные
      Ξ и Си; & # 926; & # x39E; Капитал Си
      ξ и xi; & # 958; & # x3BE; Строчная Xi
      Ο и Omicron; & # 927; & # x39F; Капитал Омикрон
      ο & omicron; & # 959; & # x3BF; Строчная Omicron
      Π и пи; & # 928; & # x3A0; Capital Pi
      π и пи; & # 960; & # x3C0; Пи строчные
      Ρ и Rho; & # 929; & # x3A1; Capital Rho
      ρ & rho; & # 961; & # x3C1; Строчная Rho
      Σ и Sigma; & # 931; & # x3A3; Capital Sigma
      σ & сигма; & # 963; & # x3C3; Строчная сигма
      ς и сигмаф; & # 962; & # x3C4; Финальная сигма в нижнем регистре
      Τ и Тау; & # 932; & # x3A4; Капитал Тау
      τ & тау; & # 964; & # x3C4; Строчная Тау
      Υ и Upsilon; & # 933; & # x3A5; Капитал Ипсилон
      υ и ипсилон; & # 965; & # x3C5; Ипсилон строчные
      Φ и Phi; & # 934; & # x3A6; Capital Phi
      φ и phi; & # 966; & # x3C6; Фи в нижнем регистре
      Χ и Чи; & # 935; & # x3A7; Capital Chi
      χ и чи; & # 967; & # x3C7; Чи строчная
      Ψ и пси; & # 936; & # x3A8; Заглавная буква Psi
      ψ & psi; & # 968; & # x3C8; Строчная Psi
      Ом и Омега; & # 937; & # x3A9; Капитал Омега
      ω & омега; & # 969; & # x3C9; Строчная Омега

      Использовать эти символы просто.В разметке HTML вы должны разместить эти коды специальных символов там, где вы хотите, чтобы греческий символ отображался. Они используются аналогично другим кодам специальных символов HTML, которые позволяют добавлять символы, которых также нет на традиционной клавиатуре, и поэтому их нельзя просто ввести в HTML для отображения на веб-странице.

      Помните, что эти коды символов могут использоваться на англоязычном веб-сайте, если вам нужно отобразить слово с одним из этих символов. Эти символы также будут использоваться в HTML, который фактически отображает полные греческие переводы, независимо от того, действительно ли вы кодировали эти веб-страницы вручную и имели полную греческую версию сайта, или если вы использовали более автоматизированный подход к многоязычным веб-страницам и перешли с таким решением, как Google Translate.

      Отредактировал Джереми Жирар

      Таблица

      Ascii для кодировки кириллицы (CP855)

      Американский стандартный код для обмена информацией ( ASCII ) — широко используемая система кодирования символов , представленная в 1963 году.

      Исходный набор символов , который теперь называется стандартным набором символов, изначально состоял из 128 символов (7-битный код). Первые 32 символа — это управляющие символы (также называемые непечатаемыми символами), которые используются для управления потоками данных, а также такими устройствами, как принтеры.Позже он был расширен для поддержки 256 символов (8-битный код), чтобы обеспечить языковые символы, различные символы, а также символы для рисования прямоугольников: элементы, используемые для целей презентации, позволяющие рисовать различные типы рамок и прямоугольников. Символы в диапазоне 128–255 называются расширенным ASCII.

      Кодовая страница 855 — это альтернативная кодовая страница , используемая для написания языков на основе кириллицы: белорусский, боснийский, болгарский, македонский, русский, сербский, украинский (славянские языки) и казахский, киргизский, молдавский, монгольский, таджикский, узбекский ( неславянский).Он не очень популярен, наиболее широко используется кодовая страница 866. Только расширенный набор символов отличается от исходной кодовой страницы, причем как управляющие символы, так и стандартный набор символов представляют собой простой ASCII.

      В приведенной ниже таблице символов показано графическое представление каждого символа с точностью до пикселя вместе с текстовым описанием.

      Управляющие символы (0 — 31):

      9136
      Dec Hex Char Описание Dec Hex Char Описание
      0 0 NUL (Пусто) (Выход из канала передачи данных)
      1 1 SOH (начало заголовка) 17 11 DC1 (управление устройством 1)
      2 2 Начало текста) 18 12 DC2 (Управление устройством 2)
      3 3 ETX (Конец текста) 19 13 DC3 (Устройство управления 3 )
      4 4 EOT (конец передачи) 20 14 DC4 (Device Control 4)
      5 5 907 56 ENQ (Запрос) 21 15 NAK (Отрицательное подтверждение)
      6 6 ACK (Подтверждение) 22 Синхронизация 955 SYN
      7 7 BEL (колокол) 23 17 ETB (конец блока передачи)
      8 8 18 CAN (Отмена)
      9 9 HT (горизонтальное табулирование) 25 19 EM (конец среды)
      6 10 LF (перевод строки) 26 1A SUB (замена)
      11 B VT (вертикальное табулирование) 27 1B ESC (выход)
      12 C FF (подача формы) 28 1C FS (разделитель файлов)56 13 (Возврат каретки) 29 1D GS (Разделитель групп)
      14 E SO (Shift Out) 30 1E RS
      15 F SI (сдвиг внутрь) 31 1F US (разделитель единиц)

      Стандартный набор символов (32-127):

      907 9075 9075 907 9075 9075 Apostrophe 9557 9075 Upostrophe 57 9075 907 9075 9075 9075 Три 9136 3D 109 907 907 113 9075 5 114 D

      5666 907 Верхняя часть корпуса F Верхняя часть M
      Dec Hex Char Описание Dec Hex Char Описание
      32 20 Space
      33 21 Восклицательный знак 81 51 Верхний корпус Q
      34 22 Верхний корпус
      35 23 Хеш 83 53 Верхний корпус S
      36 24 Доллар 84 54 37 25 Процент 85 55 Верхний ок. se U
      38 26 Ampersand 86 56 Верхний корпус V
      39 27 87556
      40 28 Открытая скоба 88 58 Верхняя часть корпуса X
      41 29 Закрывающая скоба Закрывающая скоба 8955
      42 2A Звездочка 90 5A Верхняя часть корпуса Z
      43 2B Plus
      44 2C Запятая 92 5C Обратная косая черта
      45 2D Приборная панель 93 5D Закрывающая квадратная скоба
      46 2E Полный упор 9075 9075 47 2F Слэш 95 5F Подчеркивание
      48 30 Нулевой 96 accent 60 Один 97 61 Нижняя часть корпуса a
      50 32 Два 98 62 Нижняя часть корпуса b
      99 63 Нижний корпус c
      52 34 9075 6 Четыре 100 64 Нижняя часть корпуса d
      53 35 Пять 101 65 Нижняя часть корпуса e Шесть 102 66 Нижняя часть корпуса f
      55 37 Семь 103 67 Нижняя часть корпуса g5
      104 68 Нижняя часть корпуса h
      57 39 Девять 105 69 Нижняя часть корпуса i5
      58755 106 6A Нижний регистр j
      59 3B Точка с запятой 107 6B Нижняя часть корпуса k
      60 3C Менее 108 6C Нижняя часть корпуса l
      Знак 6D Нижняя часть корпуса m
      62 3E Больше, чем 110 6E Нижняя часть корпуса n
      6398F 111 6F Нижняя часть корпуса o
      64 40 At 112 70 Нижняя часть корпуса p
      65 71 Нижняя часть корпуса q
      66 42 Верхняя часть корпуса B 72 Нижняя часть корпуса r
      67 43 Верхняя часть корпуса C 115 73 Нижняя часть корпуса s
      68 44 116 74 Нижняя часть корпуса t
      69 45 Верхняя часть корпуса E 117 75 Нижняя часть корпуса 70 u
      118 76 Нижняя часть корпуса v
      71 47 Верхняя часть корпуса G 119 77 Нижняя часть корпуса w
      Верхний корпус H 120 78 Нижний корпус x
      73 49 Верхний корпус e I 121 79 Нижняя часть корпуса y
      74 4A Верхняя часть корпуса J 122 7A Нижняя часть корпуса z 9559 Верхняя часть корпуса K 123 7B Открытая скоба
      76 4C Верхняя часть L 124 7C55125 7D Закрывающая скоба
      78 4E Верхняя часть N 126 7E 79551 case O 127 7F Удалить

      Расширенный набор символов (128-255):

      9098 рисунки светятся и справа 907 55 C46 9075 верхняя часть 6 DZE 907 90 755207 em 9075 9075 9075 полублок 9075 DE ER 9075 ES9 907
      Dec Hex Char Описание Dec Hex Char Описание
      128 80 Cyrillic
      129 81 Кириллица верхняя часть корпуса DJE 193 C1 Рисунок коробки светится и горизонтально
      130 82 9075 нижний корпус6 9 194 C2 Чертежи коробки светлые и горизонтальные
      131 83 Верхняя часть корпуса кириллицей GJE 195 132 9075 C3 84 Кириллица в нижнем регистре io 196 Чертежи светового короба горизонтальный
      133 85 Кириллица верхний корпус IO 197 C5 Чертежи светового короба вертикальный и горизонтальный5
      Кириллица нижняя украинская IE 198 C6 Кириллица нижняя ка
      135 87 Кириллица верхняя часть украинская IE 199 975 C6 136 88 Кириллица нижний регистр dze 200 C8 Чертежи коробки сдвоены вверх и вправо
      137 89 Кириллица Чертежи коробки, сдвоенные вниз и вправо
      138 8A 907 56 Нижний регистр кириллицы белорусско-украинский i 202 CA Чертежи прямоугольной формы, сдвоенные и горизонтальные
      139 8B Кириллица верхний регистр белорусско-украинский 9055 Чертежи коробки, сдвоенные вниз и по горизонтали
      140 8C Строчная кириллица yi 204 CC Чертежи коробки двойные вертикальные и правые
      955 141 верхний корпус YI 205 CD Чертежи коробки двойная горизонтальная
      142 8E Кириллица нижняя часть je 206 CE горизонтальная 143 8F Верхний регистр с кириллицей JE CF Знак валюты
      144 90 Строчная кириллица lje 208 D0 Строчная кириллица 1 верхний регистр LJE 209 D1 Кириллица верхний регистр EL
      146 92 Кириллица нижний регистр nje 210 D2 93 Верхний регистр с кириллицей NJE 211 D3 Верхний регистр с кириллицей EM
      148 94 Нижний регистр с кириллицей En139 D3
      149 95 Верхний регистр с кириллицей TSHE 2 13 D5 Верхний регистр с кириллицей EN
      150 96 Нижний регистр с кириллицей kje 214 D6 Кириллица 9055 907 907 907 907 907 9075 9 Верхний регистр с кириллицей KJE 215 D7 Верхний регистр с кириллицей O
      152 98 Нижний регистр с кириллицей укороченный u 2165 r98 D8 9075 pe 9075 153 99 Кириллица короткая верхняя часть корпуса U 217 D9 Рисунки на коробке светятся и слева
      154 9A Кириллица 9075 DA6 dz6 Чертежи коробки с подсветкой вниз и вправо
      155 9B Кириллица u pper case DZHE 219 DB Полный блок
      156 9C Кириллица нижний корпус yu 220 DC Верхний регистр кириллицы YU 221 DD Верхний регистр кириллицы PE
      158 9E Нижний регистр кириллицы жесткий знак 222
      159 9F Кириллический верхний регистр жесткий знак 223 DF Верхний полублок
      160 A0 907 907 907 907 9075 907 907 9075 9075 907 9075 907 907 9075 907 907 907 907 Верхний регистр кириллицы YA
      161 A1 Верхний регистр кириллицы A 9 0756 225 E1 Нижний регистр кириллицы er
      162 A2 Нижний регистр кириллицы be 226 A300 E2 907 907 9075 9075 9075 верхний регистр Верхний регистр с кириллицей BE 227 E3 Нижний регистр с кириллицей es
      164 A4 Кириллица нижний регистр tse 228 165 A5 Верхний регистр с кириллицей TSE 229 E5 Нижний регистр с кириллицей te
      166 A655 907 907 907 907 9055 Cyrillic6 9055 верхняя часть корпуса TE
      167 A7 кириллица верхняя часть корпуса DE 907 56 231 E7 Нижний регистр кириллицы u
      168 A8 Нижний регистр кириллицы т.е. Верхний регистр кириллицы IE 233 E9 Нижний регистр кириллицы zhe
      170 AA Кириллица нижний регистр ef234 EA 171 AB Верхний регистр с кириллицей EF 235 EB Нижний регистр с кириллицей ve
      172 AC g кириллица верхняя часть корпуса VE
      173 AD кириллица верхняя часть корпуса GHE 237 ED Мягкий знак кириллицы в нижнем регистре
      174 AE Двойные угловые кавычки, указывающие влево 238 EE Мягкий знак 907 907 EE Кириллица 907 AF Двойные угловые кавычки, указывающие вправо 239 EF Цифровой знак
      176 B0 Светлый оттенок 9756
      177 B1 Средний оттенок 241 F1 Кириллица нижний регистр yeru
      178 B255 907 907 9075 верхний темный оттенок
      179 B3 Коробка чертежей светлая вертикальная 90 756 243 F3 Нижний регистр с кириллицей ze
      180 B4 Чертежи коробки, свет, вертикальный и левый 244 F440 907 907 9075 Cyrillic 9075 B5 Нижний регистр кириллицы ha 245 F5 Кириллица нижний регистр sha
      182 B6 Верхний регистр кириллицы HA
      183 B7 Нижний регистр кириллицы i 247 F7 Нижний регистр кириллицы e
      184 B8 Ir756ic верхний регистр Верхний регистр с кириллицей e
      185 B9 Чертежи коробки дуба левая вертикальная и левая 249 F9 Кириллица нижняя ща
      186 BA Коробка чертежи двойная вертикальная 250 FA 907 верхний корпус SHCHrillic 9055 Cyrillic BB Чертежи коробки сдвоены вниз и слева 251 FB Кириллица нижний регистр che
      188 BC Чертежи коробки сдвоены вверх и слева 6 Верхняя часть корпуса с кириллицей CHE
      189 BD Нижняя часть корпуса с кириллицей, укороченная i 253 FD Знак раздела
      190 I 9075 I
      BE 254 FE Черный квадрат
      191 BF 90 756 Чертежи коробки светятся вниз и влево 255 FF Бесперебойное пространство

      Руководство пользователя Глава 6: Поддержка Unicode и не-ASCII

      Глава 6.Поддержка Unicode и не-ASCII

      6.1 Формат для печати в кавычках
      6.2 Символы не-ASCII в заголовках
      6.3 Unicode и UTF-8
      6.4 Поддержка UTF-8 в AspEmail
      6.5 Допустимые значения CharSet

      6.1 Формат цитируемой печати

      AspEmail может отправлять сообщения в алфавитах, отличных от US-ASCII. за счет поддержки формата «Цитата для печати». Этот формат описан в RFC-2045.Идея формата заключается в том, что символы с кодами меньше 33 и больше чем 126 представлены знаком «=», за которым следует двузначное шестнадцатеричное представление. ценности персонажа. Например, десятичное значение 12 (подача формы US-ASCII) представлен как = 0C , а десятичное значение 61 (US-ASCII «=») может быть представлено как = 3D .

      AspEmail кодирует тело сообщения в формате Quoted-Printable автоматически, если для свойства ContentTransferEncoding установлено значение строка «Quoted-Printable» (регистр букв не имеет значения).Вы также можете установить свойство Charset к соответствующему набору символов. Следующий фрагмент кода отправляет сообщение на русском языке:

      <% @ codepage = 1251%>

      <%

      Mail.Charset = «Windows-1251»
      Mail.Body = «-«.
      Mail.ContentTransferEncoding = «Quoted-Printable»
      %>

      Директива <% @ codepage = 1251%> предписывает интерпретатор ASP для обработки жестко запрограммированных символов в сценарии в виде русских символов (1251 — русская кодовая страница).Как результат, Body получит русскую строку Unicode.

      6.2 Символы не-ASCII в заголовках

      Если вы хотите отправить сообщение с определенными заголовками, например, Тема: , To: или From: , содержащие символы, отличные от US-ASCII, следует использовать метод Mail.EncodeHeader для кодирования строки символов в соответствии с RFC 1522.Метод принимает один обязательный параметр, строку заголовка, и один необязательный параметр, набор символов, который по умолчанию равен « ISO-8859-1 ». Например:

      <% @ codepage = 1251%>

      <%
      Mail.Subject = Mail.EncodeHeader («-«, «Windows-1251»)
      Mail.FromName = Mail.EncodeHeader («», «Windows-1251»)
      Mail.AddAddress «[email protected]», Mail.EncodeHeader («»)
      %>

      6.3 Юникод и UTF-8

      Из MSDN: «Юникод — это 16-битный стандарт кодировки символов фиксированной ширины, который охватывает практически все символы, обычно используемые на компьютерах сегодня. Это включает в себя большинство письменных языков мира, а также издательские персонажи, математические и технические символы и знаки препинания «.

      Из Unicode.org: «Компьютеры … хранят буквы и другие символы присвоение номера каждому.До изобретения Unicode существовало сотни различных систем кодирования для присвоения этих чисел. Ни одна кодировка не может содержать достаточно символов … Unicode предоставляет уникальный номер для каждого символа, независимо от того, какая платформа, какая программа, на каком языке ».

      Например, основная латинская буква «А» имеет шестнадцатеричный код 0041 (65), русский буква имеет код Hex 0416 (1046), а китайский иероглиф имеет код Hex 32A5 (12965).

      UTF-8 (формат преобразования Unicode, 8-битная форма кодирования) рекомендуется формат, который будет использоваться для отправки данных на основе Unicode по сетям, в частности, через Интернет. UTF-8 представляет значение Unicode как последовательность из 1, 2 или 3 байтов.

      Символы Юникода в диапазоне от 0000 до 007F кодируются просто как байты. 00 до 7F. Это означает, что файлы и строки, содержащие только 7-битный ASCII символы имеют одинаковую кодировку как в ASCII, так и в UTF-8.Следовательно, Unicode 0041 («A») в UTF-8 — это Hex 41.

      Символы Юникода в диапазоне от 0080 до 07FF кодируются как последовательность из двух байтов. Например, Unicode 0416 () кодируется как Hex D0 96. Кодируются символы Unicode в диапазоне от Hex 0800 до FFFF. как последовательность из трех байтов. Например, Unicode 32A5 () кодируется как Hex E3 8A A5.

      6.4 Поддержка UTF-8 в AspEmail

      AspEmail 5.0 предлагает полную поддержку UTF-8 как в теле сообщения, так и в заголовках. Чтобы отправить сообщение в кодировке UTF-8, вы должны установить CharSet свойство к строке « UTF-8 » (регистр не имеет значения), и ContentTransferEncoding на « Quoted-Printable ». Вы также должны передать « UTF-8 » в качестве второго аргумента для EncodeHeader .

      В следующем примере кода демонстрируется использование UTF-8:






      <%
      ‘изменить на адрес вашего собственного SMTP-сервера
      strHost = «smtp.myisp.net «

      ‘Включить UTF-8 -> Перевод Unicode для элементов формы
      Session.CodePage = 65001 ‘Код UTF-8

      Если Запрос («Отправить») «» То
      Установите Mail = Server.CreateObject («Persits.MailSender»)
      ‘введите действительный SMTP-хост
      Mail.Host = strHost

      Mail.From = «[email protected]» ‘с адреса
      Mail.FromName = Mail.EncodeHeader (Запрос («FromName»), «utf-8»)
      Почта.Запрос AddAddress («Кому»)

      ‘тема сообщения
      Mail.Subject = Mail.EncodeHeader (Запрос («Тема»), «utf-8»)

      ‘тело сообщения
      Mail.Body = Request («Body»)

      ‘Параметры UTF-8
      Mail.CharSet = «UTF-8»
      Mail.ContentTransferEncoding = «Quoted-Printable»
      Mail.Send ‘отправить сообщение
      Response.Write «Сообщение отправлено» & Request («To»)
      Конец, если
      %>




      AspEmail: Unicode.asp

      <ТЕЛО>


      <ТАБЛИЦА ЯЧЕЙКИ = 0 ЯЧЕЙКА = 0>
      Введите адрес электронной почты:
      Введите свое имя:
      Введите тему:
      Введите текст:




      В этом примере кода есть несколько важных элементов, которые нельзя упускать из виду:

      Этот тег META определяет набор символов для этой страницы как UTF-8.Это, помимо прочего, указывает браузеру кодировать все элементы формы в кодировке UTF8. когда форма отправлена.

      Session.CodePage = 65001

      Эта строка указывает нашему сценарию ASP преобразовывать элементы формы в кодировке UTF8. (возвращается коллекцией Request.Form) обратно к обычным строкам Unicode. Номер 65001 — это кодовая страница UTF-8.

      Mail.Subject = Mail.EncodeHeader (Запрос («Тема»), «utf-8»)

      Второй необязательный аргумент установлен в «UTF-8» для правильного кодирования заголовка.

      Mail.CharSet = «UTF-8»
      Mail.ContentTransferEncoding = «Quoted-Printable»

      Эти две строки обеспечивают правильную кодировку UTF-8 тела сообщения.

      Щелкните ссылки ниже, чтобы запустить этот пример кода:

      http: //localhost/aspemail/NonAscii/Unicode.asp
      http: //localhost/aspemail/NonAscii/Unicode.aspx

      6.5 допустимых значений CharSet

      Вы можете указать следующие строковые значения для свойства CharSet , а также второй необязательный аргумент метода EncodeHeader :
      Значение Значение
      «UTF-8» UTF-8
      «UTF-7» UTF-7
      «Окна-1250»
      «cp1250»
      ANSI — Центральная Европа
      «Окна-1251»
      «cp1251»
      ANSI — кириллица
      «Windows-1252»
      «cp1252»
      «ascii»
      «us-ascii»
      Латиница I
      «Окна-1253»
      «cp1253»
      ANSI — греческий
      «Окна-1254»
      «cp1254»
      ANSI — турецкий
      «Windows-1255»
      «cp1255»
      ANSI — иврит
      «Окна-1256»
      «cp1256»
      ANSI — арабский
      «Окна-1257»
      «cp1257»
      ANSI — Балтика
      «Окна-1258»
      «cp1258»
      ANSI — вьетнамский
      «ISO-8859-1» Latin I (значение по умолчанию)
      «ISO-8859-2» Центральная Европа
      «ISO-8859-3» Латиница 3
      «ISO-8859-4» Балтика
      «ISO-8859-5» Кириллица
      «ISO-8859-6» Арабский
      «ISO-8859-7» Греческий
      «ISO-8859-8» Еврейский
      «ISO-8859-9» Латиница 5
      «ISO-8859-15» Латиница 9
      «cp866» Русский DOS
      «КОИ8-Р» Русский
      «кои8-у» Украинский
      shift_jis Японская Windows
      «ks_c_5601-1987»
      «корейский»
      Корейский
      «EUC-KR»
      «корейский»
      EUC — корейский
      «BIG5» Традиционный китайский Windows
      «GB2312»
      «китайский»
      Китайский упрощенный
      «HZ-GB-2312» Упрощенный китайский HZ
      «EUC-JP» EUC — японский
      «X-EUC-TW» EUC — традиционный китайский

      PostgreSQL: Документация: 9.3: Поддержка набора символов

      Поддержка набора символов в PostgreSQL позволяет хранить текст в множество наборов символов (также называемых кодировками), включая однобайтовые наборы символов, такие как серия ISO 8859 и многобайтовые наборы символов, такие как EUC (Extended Unix Code), UTF-8 и Mule внутренний код. Можно использовать все поддерживаемые наборы символов. прозрачно для клиентов, но некоторые из них не поддерживаются для использования внутри сервера (то есть как кодирование на стороне сервера). По умолчанию набор символов выбирается при инициализации кластера базы данных PostgreSQL с помощью initdb.Его можно переопределить при создании база данных, поэтому у вас может быть несколько баз данных с разными набор символов.

      Однако важным ограничением является то, что каждая база данных набор символов должен быть совместим с настройками локали базы данных LC_CTYPE (классификация символов) и LC_COLLATE (порядок сортировки строк). Для C или POSIX языковой стандарт, разрешен любой набор символов, но для других языков есть это только один набор символов, который будет работать правильно. (В Windows однако кодировку UTF-8 можно использовать с любой локалью.)

      Таблица 22-1 показывает наборы символов, доступные для использования в PostgreSQL.

      Таблица 22-1. PostgreSQL Наборы символов

      Имя Описание Язык Сервер? байт / символ Псевдонимы
      BIG5 Большая пятерка Традиционный китайский 1-2 WIN950, Windows950
      EUC_CN Расширенный код UNIX-CN Китайский упрощенный Есть 1-3
      EUC_JP Расширенный код UNIX-JP Японский Есть 1-3
      EUC_JIS_2004 Расширенный код UNIX-JP, JIS X 0213 Японский Есть 1-3
      EUC_KR Расширенный код UNIX-KR Корейский Есть 1-3
      EUC_TW Расширенный код UNIX-TW Китайский традиционный, тайваньский Есть 1-3
      ГБ18030 Национальный стандарт Китайский 1-4
      ГБК Национальный стандарт расширенный Китайский упрощенный 1-2 WIN936, Windows936
      ISO_8859_5 ISO 8859-5, ECMA 113 Латиница / кириллица Есть 1
      ISO_8859_6 ISO 8859-6, ECMA 114 Латинский / арабский Есть 1
      ISO_8859_7 ISO 8859-7, ECMA 118 Латинский / греческий Есть 1
      ISO_8859_8 ISO 8859-8, ECMA 121 Латиница / Иврит Есть 1
      JOHAB JOHAB Корейский (хангыль) 1-3
      KOI8R КОИ8-Р Кириллица (русская) Есть 1 КОИ8
      КОИ8У КОИ8-У Кириллица (украинская) Есть 1
      LATIN1 ISO 8859-1, ECMA 94 Западноевропейская Есть 1 ISO88591
      LATIN2 ISO 8859-2, ECMA 94 Центральноевропейская Есть 1 ISO88592
      LATIN3 ISO 8859-3, ECMA 94 Южноевропейский Есть 1 ISO88593
      LATIN4 ISO 8859-4, ECMA 94 Северо-Европейский Есть 1 ISO88594
      LATIN5 ISO 8859-9, ECMA 128 Турецкий Есть 1 ISO88599
      LATIN6 ISO 8859-10, ECMA 144 Северный Есть 1 ISO885910
      LATIN7 ISO 8859-13 Балтика Есть 1 ISO885913
      LATIN8 ISO 8859-14 Селтик Есть 1 ISO885914
      LATIN9 ISO 8859-15 LATIN1 с евро и акцентами Есть 1 ISO885915
      LATIN10 ISO 8859-16, ASRO SR 14111 Румынский Есть 1 ISO885916
      MULE_INTERNAL Мул внутренний код Многоязычный Emacs Есть 1-4
      SJIS Сдвиг JIS Японский 1-2 Мсканджи, ShiftJIS, WIN932, Окна932
      SHIFT_JIS_2004 Сдвиг JIS, JIS X 0213 Японский 1-2
      SQL_ASCII не указано (см. Текст) любой Есть 1
      UHC Единый код хангыль Корейский 1-2 WIN949, Windows949
      UTF8 Unicode, 8 бит все Есть 1-4 Юникод
      WIN866 Окна CP866 Кириллица Есть 1 ALT
      WIN874 Окна CP874 Тайский Есть 1
      WIN1250 Окна CP1250 Центральноевропейская Есть 1
      WIN1251 Окна CP1251 Кириллица Есть 1 ВЫИГРАТЬ
      WIN1252 Окна CP1252 Западноевропейская Есть 1
      WIN1253 Окна CP1253 Греческий Есть 1
      WIN1254 Окна CP1254 Турецкий Есть 1
      WIN1255 Окна CP1255 Еврейский Есть 1
      WIN1256 Окна CP1256 Арабский Есть 1
      WIN1257 Окна CP1257 Балтика Есть 1
      WIN1258 Окна CP1258 Вьетнамский Есть 1 ABC, TCVN, TCVN5712, VSCII

      Не все клиентские API поддерживают все перечисленные наборы символов.Например, драйвер PostgreSQL JDBC не поддерживает MULE_INTERNAL, LATIN6, LATIN8 и ЛАТИНСКИЙ 10.

      Параметр SQL_ASCII ведет себя значительно отличается от других настроек. Когда сервер набор символов — SQL_ASCII, сервер интерпретирует байтовые значения 0-127 в соответствии со стандартом ASCII, а байтовые значения 128–255 считаются неинтерпретируемыми символами. Нет преобразование кодировки будет выполнено, если установлено значение SQL_ASCII. Таким образом, этот параметр не так уж и хорош. объявление, что используется определенная кодировка, как объявление незнание кодировки.В большинстве случаев, если вы работаете с любыми данными, отличными от ASCII, неразумно использовать параметр SQL_ASCII, потому что PostgreSQL не сможет вам помочь преобразование или проверка символов, отличных от ASCII.

      initdb определяет символ по умолчанию установить (кодировку) для PostgreSQL кластер. Например,

       initdb -E EUC_JP 

      устанавливает набор символов по умолчанию на EUC_JP (расширенный код Unix для японского языка). Ты можешь используйте —encoding вместо -E, если вы предпочитаете более длинные строки параметров. Если нет -E или —encoding задана опция, initdb пытается определить подходящую кодировку для использования на основе указанного или языковой стандарт по умолчанию.

      Вы можете указать нестандартную кодировку при создании базы данных. время, при условии, что кодировка совместима с выбранной язык:

      createdb -E EUC_KR -T template0 --lc-collate = ko_KR.euckr --lc-ctype = ko_KR.euckr корейский 

      Это создаст базу данных с именем korean, которая использует набор символов EUC_KR и локаль ko_KR. Другой способ сделать это — использовать эту команду SQL:

      СОЗДАТЬ БАЗУ ДАННЫХ корейский С КОДИРОВАНИЕМ 'EUC_KR' LC_COLLATE = 'ko_KR.euckr' LC_CTYPE = 'ko_KR.euckr 'TEMPLATE = template0; 

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

      Кодировка для базы данных хранится в системном каталоге. pg_database. Вы можете увидеть это, используя параметр psql -l или команда \ l.

       $  psql -l 
                                               Список баз данных
         Имя | Владелец | Кодирование | Сортировка | Ctype | Привилегии доступа
      ----------- + ---------- + ----------- + ------------- + - ------------ + -------------------------------------
       clocaledb | хлиннака | SQL_ASCII | C | C |
       englishdb | хлиннака | UTF8 | en_GB.UTF8 | en_GB.UTF8 |
       японский | хлиннака | UTF8 | ja_JP.UTF8 | ja_JP.UTF8 |
       корейский | хлиннака | EUC_KR | ko_KR.euckr | ko_KR.euckr |
       postgres | хлиннака | UTF8 | fi_FI.UTF8 | fi_FI.UTF8 |
       template0 | хлиннака | UTF8 | fi_FI.UTF8 | fi_FI.UTF8 | {= c / hlinnaka, hlinnaka = CTc / hlinnaka}
       template1 | хлиннака | UTF8 | fi_FI.UTF8 | fi_FI.UTF8 | {= c / hlinnaka, hlinnaka = CTc / hlinnaka}
      (7 рядов) 

      Важно: В большинстве современных операционных систем PostgreSQL может определить, какой набор символов подразумевается настройкой LC_CTYPE, и это заставит использовать только соответствующую кодировку базы данных.На старые системы, вы несете ответственность за использование кодировка, ожидаемая выбранной вами локалью. Ошибка в эта область может привести к странному поведению зависящего от локали такие операции, как сортировка.

      PostgreSQL позволит суперпользователи для создания баз данных с кодировкой SQL_ASCII, даже если LC_CTYPE не C или POSIX. Как отмечалось выше, SQL_ASCII не требует, чтобы данные, хранящиеся в база данных имеет какую-либо конкретную кодировку, поэтому этот выбор ставит риски ненадлежащего поведения, зависящего от местных условий.Используя эту комбинацию настройки устарели и когда-нибудь могут быть полностью запрещены.

      PostgreSQL поддерживает автоматическую преобразование набора символов между сервером и клиентом наверняка комбинации наборов символов. Информация о преобразовании хранится в системный каталог pg_conversion. PostgreSQL поставляется с некоторыми предопределенные преобразования, как показано в Таблице 22-2. Ты может создать новое преобразование с помощью команды SQL CREATE CONVERSION.

      Таблица 22-2. Преобразование набора символов клиент / сервер

      Набор символов сервера Доступные наборы символов клиента
      BIG5 не поддерживается в качестве сервера кодировка
      EUC_CN EUC_CN, MULE_INTERNAL, UTF8
      EUC_JP EUC_JP, MULE_INTERNAL, SJIS, UTF8
      EUC_JIS_2004 EUC_JIS_2004, SHIFT_JIS_2004, UTF8
      EUC_KR EUC_KR, MULE_INTERNAL, UTF8
      EUC_TW EUC_TW, BIG5, MULE_INTERNAL, UTF8
      ГБ18030 не поддерживается в качестве сервера кодировка
      ГБК не поддерживается в качестве сервера кодировка
      ISO_8859_5 ISO_8859_5, KOI8R, MULE_INTERNAL, UTF8, WIN866, WIN1251
      ISO_8859_6 ISO_8859_6, UTF8
      ISO_8859_7 ISO_8859_7, UTF8
      ISO_8859_8 ISO_8859_8, UTF8
      JOHAB не поддерживается в качестве сервера кодировка
      KOI8R KOI8R, ISO_8859_5, MULE_INTERNAL, UTF8, WIN866, WIN1251
      КОИ8У КОИ8У, UTF8
      LATIN1 LATIN1, MULE_INTERNAL, UTF8
      LATIN2 LATIN2, MULE_INTERNAL, UTF8, WIN1250
      LATIN3 LATIN3, MULE_INTERNAL, UTF8
      LATIN4 LATIN4, MULE_INTERNAL, UTF8
      LATIN5 LATIN5, UTF8
      LATIN6 LATIN6, UTF8
      LATIN7 LATIN7, UTF8
      LATIN8 LATIN8, UTF8
      LATIN9 LATIN9, UTF8
      LATIN10 LATIN10, UTF8
      MULE_INTERNAL MULE_INTERNAL, BIG5, EUC_CN, EUC_JP, EUC_KR, EUC_TW, ISO_8859_5, KOI8R, LATIN1 в LATIN4, SJIS, WIN866, WIN1250, WIN1251
      SJIS не поддерживается в качестве сервера кодировка
      SHIFT_JIS_2004 не поддерживается в качестве сервера кодировка
      SQL_ASCII любой (конвертации не будет выполнено)
      UHC не поддерживается в качестве сервера кодировка
      UTF8 все поддерживаются кодировки
      WIN866 WIN866, ISO_8859_5, KOI8R, MULE_INTERNAL, UTF8, WIN1251
      WIN874 WIN874, UTF8
      WIN1250 WIN1250, LATIN2, MULE_INTERNAL, UTF8
      WIN1251 WIN1251, ISO_8859_5, KOI8R, MULE_INTERNAL, UTF8, WIN866
      WIN1252 WIN1252, UTF8
      WIN1253 WIN1253, UTF8
      WIN1254 WIN1254, UTF8
      WIN1255 WIN1255, UTF8
      WIN1256 WIN1256, UTF8
      WIN1257 WIN1257, UTF8
      WIN1258 WIN1258, UTF8

      Чтобы включить автоматическое преобразование набора символов, вы должны указать PostgreSQL набор символов (кодировка), которую вы хотели бы использовать в клиенте.Есть несколько способов добиться этого:

      • Использование команды \ encoding в psql. \ encoding позволяет изменять кодировку клиента на муха. Например, чтобы изменить кодировку на SJIS, введите:

        .
         \ кодировка SJIS 
      • libpq (Раздел 31.10) имеет функции для управления клиентская кодировка.

      • Использование SET client_encoding TO. Параметр кодирование клиента может быть выполнено с помощью этой команды SQL:

         УСТАНОВИТЬ CLIENT_ENCODING TO 'значение'; 

        Также вы можете использовать стандартный синтаксис SQL SET ИМЕНА для этого:

         УСТАНОВИТЬ ИМЯ 'значение'; 

        Для запроса текущей клиентской кодировки:

         ПОКАЗАТЬ client_encoding; 

        Для возврата к кодировке по умолчанию:

         СБРОС client_encoding; 
      • Использование PGCLIENTENCODING.Если переменная среды PGCLIENTENCODING равна определена в клиентской среде, эта клиентская кодировка автоматически выбирается при подключении к серверу. (Впоследствии это можно изменить, используя любой из других методов. упомянуто выше.)

      • Использование переменной конфигурации client_encoding. Если установлена ​​переменная client_encoding, эта клиентская кодировка выбирается автоматически при подключении к сервер сделан. (Впоследствии это может быть отменено с помощью любого других методов, упомянутых выше.)

      Если преобразование определенного символа невозможно — предположим, вы выбрали EUC_JP для сервера и LATIN1 для клиента, а некоторые Возвращаются японские символы, которые не имеют представления в LATIN1 — сообщается об ошибке.

      Если набор символов клиента определен как SQL_ASCII, преобразование кодировки отключено, независимо от набора символов сервера. Как и в случае с сервером, использование SQL_ASCII неразумно, если вы не работа с данными в формате ASCII.

      Это хорошие источники для начала изучения различных видов системы кодирования.

      CJKV Обработка информации: китайский, Вычислительная техника в Японии, Корее и Вьетнаме

      Содержит подробные объяснения EUC_JP, EUC_CN, EUC_KR, EUC_TW.

      http://www.unicode.org/

      Веб-сайт Консорциума Unicode.

      RFC 3629

      UTF-8 (8-битный UCS / Unicode Формат преобразования) определяется здесь.

      Чтение и запись кириллицы

      Если вы используете Windows, вы можете загрузить точный шрифт, использованный для создания этих страниц, нажав ЗДЕСЬ . Если вы установите его на 10 pt., Вы должны получить очень точное совпадение со шрифтами в графике. Компьютеры Macintosh выглядят лучше, если шрифты ER Bukinist установлены на 12 пунктов. Они доступны ЗДЕСЬ . Если вы используете другую платформу, установите размер шрифта 10 pts. должен дать вам наилучшее совпадение со словами действия, встроенными в текст.

      После того, как вы установили шрифты KOI8-R на свой компьютер, вы также должны настроить Netscape Navigator или MS Internet Explorer 5.0 для доступа к ним. Чтобы настроить Netscape Navigator 4.5, необходимо выполнить три шага:

      1. Откройте меню «Правка» и выберите «Настройки» и «Шрифты», а затем выберите «Кириллица» в окне «Для кодировки документа». Если у вас есть многоязычная поддержка, вы можете использовать шрифт Times New Roman или Arial.Если вы не используете многоязычную поддержку, выберите шрифты KOI8-R (новый русский или ERBukinist) для «пропорционального шрифта» и KOI8-R Courier (Courier Cyrillic или Bukinist) для выбора «шрифта фиксированной ширины» в Папка «Шрифты».

      2. В разделе «Просмотр» откройте «Набор символов» и установите для него «Кириллица (KOI8-R)»

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

      Для MS Internet Explorer 5.0 выберите «Свойства обозревателя» в меню «Инструменты». Внизу страницы выберите «Шрифты» и выберите подходящий шрифт для вашего языкового сценария «Кириллица». Все остальное MSIE сделает за вас. Возможно, вам придется установить «Кодировку» в «Вид» для «Кириллица (KOI-8)» для некоторых страниц; однако все страницы в этой грамматике должны автоматически открываться шрифтами KOI8. Однако, хотя страница может открываться в KOI8 автоматически, клавиатура может не работать без ручной настройки кодировки страницы на «Кириллица (KOI8)».

      Письменный русский

      Если вы хотите записать упражнения в справочную грамматику, помимо установки шрифтов KOI8-R вам необходимо (1) установить кириллическую клавиатуру и (2) настроить ваш браузер для кодирования документов KOI8-R.

      KOI8-R Клавиатуры

      Чтобы установить буквенно-буквенную кириллическую клавиатуру учащегося, необходимо приобрести ее или загрузить в Интернете. Следуйте инструкциям по его установке.Если вы используете Windows 95/98, загрузите Bucknell KOI8 Keyboard Package здесь. Он основан на Tavultesoft Keyboard Manager Летнего института лингвистики. Пакет Bucknell поставляется со стандартной русской раскладкой клавиатуры и буквенной раскладкой учащегося, где русские буквы соответствуют латинским буквам с таким же или похожим звуком. Инструкции по установке Tavultesoft Keyboard Manager включены в пакет. Теперь есть менеджер клавиатуры Tavultesoft для Windows NT, доступный от автора за 30 долларов.

      Если вы используете Mac, вы можете получить клавиатуру с раскладкой, аналогичной латинице, загрузив наш пакет шрифтов ERBukinist , указанный выше. Вы устанавливаете клавиатуру, перетаскивая ее в системный каталог, затем вы должны установить расширение клавиатуры (под яблоком) на KOI8-R.

      Печать кириллицей

      Если у вас нет цветного принтера, перед печатью этих страниц проверьте параметры файла / страницы в Netscape и убедитесь, что установлен флажок «Черный текст».Когда вы распечатываете эти страницы, сами генерируемые слова будут отображаться как основа + окончание, а не как полностью производное слово. (В конце концов, именно поэтому электронный формат предпочтительнее.)

      @documentencoding (GNU Texinfo 6.8)


      14.2

      @documentencoding enc : Установить кодировку ввода

      Команда @documentencoding объявляет входной документ кодирование, а также может влиять на кодировку вывода.Напиши это на отдельная строка с действующей спецификацией кодировки, следующей за начало файла.

      Texinfo поддерживает следующие кодировки:

      US-ASCII

      Это не имеет особого значения, но включено для полноты картины.

      UTF-8

      Обширная глобальная кодировка символов, выраженная в 8-битных байтах.

      ISO-8859-1
      ISO-8859-15
      ISO-8859-2

      Это стандартные кодировки для западноевропейских (первый два) и восточноевропейские языки (третий) соответственно.ISO 8859-15 заменяет некоторые малоиспользуемые символы из 8859-1 (например, предварительно составленные дроби) с более часто используемыми, такими как Символ евро (€).

      Полное описание кодировок здесь выходит за рамки наших возможностей; одна полезная ссылка — http://czyborra.com/charsets/iso8859.html.

      кои8-р

      Это обычно используемая кодировка для русского языка.

      кои8-у

      Это обычно используемая кодировка украинского языка.

      Указание кодировки enc имеет следующие эффекты:

      В выводе Info есть так называемая секция «Локальные переменные» (см. Раздел «Файл Переменные в Руководство GNU Emacs ) выводится, включая приложение . Это позволяет читателям Info устанавливать кодировку соответственно. Это выглядит так:

       Локальные переменные:
      кодировка:  enc 
      Конец:
       

      Также, при выводе информации и обычного текста, если опция —disable-encoding передается makeinfo , акцент конструкции и специальные символы, такие как @ 'e , выводятся как фактический 8-битный символ или символ UTF-8 в данной кодировке, где возможно.

      В выводе HTML выводится тег « » в « ». раздел HTML, в котором указано код . Веб-серверы и браузеры сотрудничают, чтобы использовать эту информацию, поэтому правильная кодировка используется для отображения страницы, если поддерживается системой. Это похоже это:

       
       

      В выводе XML и DocBook всегда используется UTF-8, согласно соглашениям этих форматов.

      В выводе TeX символы, которые поддерживаются в стандарте Соответственно выводятся шрифты Computer Modern. Например, это означает использование акцентов, а не заранее составленных глифов. Использование отсутствующего символа генерирует предупреждающее сообщение, как и указание нереализованной кодировки.

      Хотя современные системы TeX поддерживают почти все скрипты, используемые в во всем мире эта широкая поддержка недоступна в texinfo.tex , и невозможно дублировать или включать все эти усилия.(Наш план по поддержке других скриптов — создать Серверная часть LaTeX на texi2any , где уже есть поддержка настоящее время.)

      Для максимальной переносимости документов Texinfo через множество различных пользовательских сред в мире, мы рекомендуем придерживаться 7-битного ASCII во входных данных, если ваше конкретное руководство не требует значительного количества не-ASCII, например, написано на немецком языке. Вы можете использовать @U команда для вставки случайного необходимого символа (см. Вставка Unicode: @U ).

      .
  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *