Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Specials - это короткий блок Unicode, расположенный в самом конце базовой многоязычной плоскости в U + FFF0 – FFFF. Из этих 16 кодовых точек пять были присвоены начиная с Unicode 3.0:

  • U + FFF9 МЕЖЛИНЕЙНЫЙ ЯКОРЬ АННОТАЦИИ , отмечает начало аннотированного текста
  • U + FFFA МЕЖЛИНЕЙНЫЙ СЕПАРАТОР АННОТАЦИИ , отмечает начало аннотирующего символа (ов)
  • U + FFFB ИНТЕРЛИНЕЙНЫЙ ТЕРМИНАТОР АННОТАЦИИ , отмечает конец блока аннотации
  • U + FFFC  СИМВОЛ ЗАМЕНЫ ОБЪЕКТА , заполнитель в тексте для другого неуказанного объекта, например, всоставном документе.
  • U + FFFD ЗАМЕНА СИМВОЛОВ используется для замены неизвестного, непризнанных или непредставимо характер
  • U + FFFE <noncharacter-FFFE> не символ.
  • U + FFFF <noncharacter-FFFF> не символ.

FFFE и FFFF не являются неназначенными в обычном смысле, но гарантированно не являются символами Unicode . Их можно использовать, чтобы угадать схему кодировки текста, поскольку любой текст, содержащий их, по определению не является правильно закодированным текстом Unicode. Символ Unicode U + FEFF BYTE ORDER MARK может быть вставлен в начало текста Unicode, чтобы обозначить его порядок следования байтов : программа, читающая такой текст и обнаруживающая 0xFFFE, будет знать, что она должна переключить порядок байтов для всех следующих символов.

Его имя блока в Unicode 1.0 было Special . [3]

Замещающий символ [ править ]

Замещающий персонаж

Символ замены (часто отображается как черный алмаз с белым вопросительным знаком) является символом найден в Unicode стандарта на код точки U + FFFD в Specials таблице. Он используется для обозначения проблем, когда система не может преобразовать поток данных в правильный символ. Обычно это видно, когда данные недействительны и не соответствуют ни одному символу:

Рассмотрим текстовый файл, содержащий немецкое слово für (что означает «для») в кодировке ISO-8859-1 ( 0x66 0xFC 0x72). Теперь этот файл открывается в текстовом редакторе, предполагающем, что вводится в кодировке UTF-8 . Первый и последний байт являются допустимыми кодировками UTF-8 для ASCII, но средний байт ( 0xFC) не является допустимым байтом в UTF-8. Следовательно, текстовый редактор может заменить этот байт символом замены, чтобы создать допустимую строку кодовых точек Unicode . Теперь вся строка выглядит так: «f r».

Плохо реализованный текстовый редактор может сохранить замену в форме UTF-8; тогда данные текстового файла будут выглядеть следующим образом:, 0x66 0xEF 0xBF 0xBD 0x72который будет отображаться в ISO-8859-1 как «f�r» (это называется моджибаке ). Поскольку замена одинакова для всех ошибок, восстановить исходный символ невозможно. Лучше (но труднее реализовать) дизайн - сохранить исходные байты, включая ошибку, и преобразовать в замену только при отображении текста. Это позволит текстовому редактору сохранить исходную последовательность байтов, по-прежнему показывая пользователю индикатор ошибки.

Когда-то заменяющий символ часто использовался, когда в шрифте не было глифа для этого символа. Однако большинство современных систем визуализации текста вместо этого используют символ шрифта .notdef , который в большинстве случаев представляет собой пустое поле (или «?» Или «X» в поле [4] ), иногда называемый « тофу » (этот браузер отображает? ???). Для этого символа нет кода Unicode.

Таким образом, заменяющий символ теперь виден только для ошибок кодирования, таких как недопустимый UTF-8. Некоторое программное обеспечение пытается скрыть это, переводя байты недопустимого UTF-8 в совпадающие символы в Windows-1252 (поскольку это наиболее вероятный источник этих ошибок), так что заменяющий символ никогда не виден.

Диаграмма Юникода [ править ]

История [ править ]

Следующие документы, относящиеся к Unicode, фиксируют цель и процесс определения определенных символов в блоке Specials:

См. Также [ править ]

  • Управляющие символы Unicode

Ссылки [ править ]

  1. ^ "База данных символов Юникода" . Стандарт Юникода . Проверено 9 июля 2016 .
  2. ^ «Нумерованные версии стандарта Unicode» . Стандарт Юникода . Проверено 9 июля 2016 .
  3. ^ «3.8: Блок-за-блок-схемы» (PDF) . Стандарт Юникода . версия 1.0. Консорциум Unicode .
  4. ^ «Рекомендации для шрифтов OpenType (OpenType 1.7) - Типографика» . docs.microsoft.com . Проверено 18 октября 2020 года .