Поделиться через


Глоссарий по единому словарю

Этот глоссарий содержит определения терминов, используемых в документации по uniscribe.

Ширина ABC

Ширина ABC — это составное значение, определенное структурой ABC GDI. Структура содержит элементы abcA, abcB и abcC, соответствующие ширине "A", "B" и "C" глифа или запуска.

Ширина "A" является нижней (положительной; также известной как "заполнение") или навесом (отрицательным) слева от эквивалента чернила на экране, который представляет глиф или запуск. Ширина "B" — это черная ширина, ширина от крайнего левого к крайнему правому краю. Ширина "C" имеет свес справа от чернил.

На следующем рисунке показан курсив нижнего регистра F с навесом слева и справа. То есть ширины "A" и "C" здесь являются отрицательными. Пример положительной ширины "A" и "C" см. в разделе Подвесной свес .

Иллюстрация, показывающая курсив в нижнем регистре F с навесом слева и справа.

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

расширенная ширина

Передовая ширина глифа — это движение в направлении записи от начальной точки для отрисовки этого глифа до начальной точки для отрисовки следующего глифа.

двунаправленный стек

Двунаправленный стек — это 5-битовое целое число, которое отслеживает уровни вложения между текстом слева направо и справа налево. Он всегда начинается с нуля для слева направо. Таким образом, все четные значения представляют текст слева направо, а все нечетные значения — текст справа налево. Двунаправленный стек представлен в элементе uBidiLevelструктуры SCRIPT_STATE .

двунаправленный текст

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

ширина ячейки

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

cluster

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

сложный скрипт

Сложный скрипт — это скрипт с любым из следующих свойств:

  • Разрешает двунаправленную отрисовку.
  • Имеет контекстное формирование.
  • Содержит объединяющие символы.
  • Имеет специализированные правила разбиения по словам и обоснования.
  • Фильтрует недопустимые сочетания символов.
  • Не поддерживается в основных шрифтах Windows, поэтому может потребоваться откат шрифта.

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

Примечание

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

 

Уровень внедрения

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

откат шрифта

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

глиф

Глиф — это одна единица отображения в шрифте. Для OpenType эта единица измерения определяется структурой. Для других типов шрифтов его можно определить с помощью растрового изображения, набора графических команд и т. п. Глиф не обязательно соответствует одному символу. Например, лигатура "fi" ("fi") представляет два символа "f" и "i". Вьетнамская строчная буква "o" с циркумфлексом и тильдой ("ỗ") обычно состоит из нескольких глифов.

элемент

Элемент имеет один скрипт и направление. Функция ScriptItemize или ScriptItemizeOpenType может анализировать абзац на элементы. Элемент не обязательно является запуском. Он может содержать символы нескольких стилей. Сведения об элементе и выполнении должны быть объединены для определения диапазонов.

LRM

LRM обозначает метку СЛЕВА НАПРАВО (кодовая точка Юникода U+200E). Эта метка указывает, что следующие за ней символы в логическом порядке должны отображаться слева направо.

LTR

LTR указывает слева направо.

range

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

RLM

RLM обозначает знак СПРАВА НАЛЕВО (кодовая точка Юникода U+200F). Эта метка указывает, что следующие за ней символы в логическом порядке должны отображаться справа налево.

RTL

RTL указывает на преобразование справа налево.

Запустить

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

NADS

NADS обозначает NATIONAL DIGIT SHAPES (кодовая точка Юникода U+206E. Термин указывает, что европейские цифры (от U+0030 до U+0039) должны отображаться как национальные цифры. Дополнительные сведения о национальных цифрах см. в разделе Фигуры цифр.

КИВАЕТ

NODS указывает на СИМВОЛЫ НОМИНАЛЬНОЙ ЦИФРЫ (кодовая точка Юникода U+206F). Термин указывает, что европейские цифры (от U+0030 до U+0039) должны отображаться в обычном режиме, а не как национальные цифры.

Свес

Свес — это часть рукописного фрагмента глифа, которая выходит за пределы ширины глифа . Большинство глифов (например, "H") не имеют свеса, так как с обеих сторон есть немного пробелов, чтобы отделить их от смежных глифов. Примером глифа с навесом является курсив "f", используемый в этом разделе для иллюстрации ширины ABC. Как верхний, так и нижний курсив "f" нависает на смежные глифы. Свес соответствует отрицательной ширине "A" или "C".

заполнение

См. раздел "Подвес".

скрипт

Скрипт — это система письменной речи, например латиницы, арабской, китайской письменности. Один скрипт может применяться к одному или нескольким человеческим языкам. Скрипт не имеет конкретного отношения к шрифту. Например, латинский шрифт может быть одинаково хорошо отрисован шрифтом Times New Roman или Arial.

подвес

Подвесной свес — это ширина пробела слева или справа от сплошной части глифа. Подвес соответствует положительной ширине "A" или "C", как описано для ширины ABC. Underhang иногда называют "заполнение". На следующем рисунке показан нижний свес для строчной буквы n.

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

Сведения об Uniscribe