Сложный текстовый макет

редактировать
Деванагари ддхря-лигатура, как показано в Шрифт JanaSanskritSans, который должен вызываться механизмом компоновки для отображения последовательности द + ् + ध + ् + र + ् + य = द्ध्र्य. Слово العربية al-arabiyyah, арабское [язык] »на арабском языке в последовательных этапах обработки. В первой строке показаны буквы в порядке слева направо и без них, как они могут отображаться в приложении без сложного макета текста. Во второй строке применено двунаправленное отображение, а в третьей механизм формирования глифа отобразил буквы в соответствии с контекстом.

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

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

Содержание
  • 1 Характеристики, требующие CTL
  • 2 Реализации
  • 3 См. Также
  • 4 Ссылки
  • 5 Внешние ссылки
Характеристики, требующие CTL

Основные характеристики CTL сложностью являются:

  • Двунаправленный текст, где символы могут быть написаны справа налево или слева направо.
  • Контекстно-зависимое формирование и лигатуры, где персонаж может изменить свою форму в зависимости от своего местоположения и / или окружающих символов. Например, символ в арабском шрифте может иметь до четырех различных форм, в зависимости от контекста.
  • Порядок, где отображаемый порядок символов не совпадает с логический порядок. Например, в деванагари, который пишется слева направо, графема для «короткого i» появляется слева от («до») согласного, за которым следует: в कि ki -i должен отображаться слева, его нос достигает точки выше क k- вправо.

Не все проявления этих характеристик требуют CTL. Например, греческий алфавит имеет контекстно-зависимую форму буквы сигма, которая отображается как ς в конце слова и σ в другом месте. Однако эти две формы обычно хранятся как разные символы; например, Unicode имеет и U + 03C2 ς ГРЕЧЕСКАЯ СТРОЧНАЯ БУКВА ОКОНЧАТЕЛЬНАЯ СИГМА и U + 03C3 σ ГРЕЧЕСКАЯ СТРОЧНАЯ БУКВА СИГМА, и не обрабатывает их как эквивалент. В целях сопоставления и сравнения программное обеспечение должно рассматривать строку «δῖος Ἀχιλλεύς» как эквивалентную «δῖοσ Ἀχιλλεύσ», но для целей набора они различны, и CTL не требуется для выбора правильной формы.

Реализации

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

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

Примеры этого последнего подхода включают Apple Advanced Typography (AAT) и Graphite. Оба эти названия охватывают как формат инструкции, так и поддерживающее его программное обеспечение; AAT включен в операционные системы Apple , а Graphite доступен для систем на базе Microsoft Windows и Linux.

Формат OpenType в первую очередь предназначен для систем, использующих первый подход (знание макета в рендерере, а не в шрифте), но он имеет несколько функций, которые помогают с CTL, например контекстный лигатуры. Инструкции AAT и Graphite могут быть встроены в файлы шрифтов OpenType.

См. Также
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-15 08:17:03
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте