Не описывать - Uniscribe
Не описывать это Майкрософт Виндоус комплекс услуг по оказанию Unicode закодированный текст, особенно сложный текстовый макет. Они реализованы в DLL USP10.DLL. USP10.dll стал общедоступным с Windows 2000 и Internet Explorer 5.0. В дополнение Windows CE платформа поддерживает Uniscribe с версии 5.0.
Хотя Uniscribe продолжает работать, с Windows 7 его предполагаемая замена DirectWrite был представлен[нужна цитата ], который имеет больше возможностей.
USP10.dll
USP - это инициализм для Uникод Sскрипты ппроцессор. Основное назначение Uniscribe включает в себя следующее:
- преобразование входного текста из входной последовательности в визуальную последовательность.
- замена глифов в соответствии с контекстом (например, разные формы арабских символов)
- упорядочение отображаемого текста в зависимости от направления потока текста (например, LTR vs RTL, горизонтальный vs вертикальный).
Ниже перечислены некоторые распространенные версии usp10.dll, а также способы их распространения.
Функции добавляются только в соответствии с частью номера версии "major.minor", третья часть в полном номере версии используется для идентификационных номеров целевой системы, для которой DLL была перенесена Microsoft, а последняя часть - это номер сборки на каждая версия целевой системы (которая может изменяться в ходе регулярных обновлений системы / программного обеспечения). Некоторые исправления предоставляют обновления только для определенных приложений (особенно в каталоге установки Office) и не подходят для использования в системном каталоге Windows (чья версия DLL никогда не должна обновляться и часто защищается системой):
Размеры файлов могут различаться в зависимости от конкретной локализации DLL (в зависимости от целевой системы или приложения, для которого она была скомпилирована); приведенные здесь предназначены для английско-американской локализации.
Номер версии | Размер файла | Дата файла | Программное обеспечение в комплекте | Новая функция этой версии |
---|---|---|---|---|
10.0.14393.0 | 79360 байт (x64) | 2016-08-02 | Windows 10 Юбилейное обновление | ? |
1.626.7601.23259 | 627 712 байт (x86) | 2015-11-03 | ? | ? |
1.626.7601.19054 | 627 712 байт (x86) | 2015-11-03 | ? | ? |
10.0.10240.16834 | 626688 байт (x64) | 2015-07-10 | Windows 10 | Поддержка Universal Shaping Engine для Unicode 7.0 сложные скрипты[1][2][3] |
1.626.7601.18454 (Windows 7 GDR) | 626688 байт (x86) 801 280 байт (x64) | 2014-04-25 | KB2957509 [1] – Windows 7, Windows Server 2008 R2, Виндоус виста, Windows Server 2008, Windows Server 2003 | Обновление безопасности |
1.626.7601.22666 (Windows 7 LDR) | 626688 байт (x86) 801,792 байта (x64) | |||
6.3.9431.0 | 76 288 байт | 2013-06-16 | Windows 8.1 (превью) | ? |
6.2.9200.16384 | 74 КБ | 2012-07-26 | Windows 8 | ? |
1.626.7601.22171 | 626688 байт (x86) | 2012-11-22 | ? | ? |
1.626.7601.18009 | 612 КБ | 2012-11-22 | KB2786400 [2] | Доступно обновление, изменяющее настройки по умолчанию поведения при отрисовке арабского текста в Windows 7 и Windows Server 2008 R2. |
1.626.7601.17514 | 781 КБ | 2010-11-20 | Windows 7 SP1 x64 (RTM) | ? |
611 КБ | Windows 7 SP1 x86 (RTM) | |||
1.626.7601.17105 | 611 КБ | 2010-09-30 | Windows 7 SP1 (RC) | Восстановить поддержку неназначенных кодовых точек[4] |
1.626.7600.20796 | 625 КБ | 2010-09-21 | Средство просмотра PowerPoint 2010 (SP1) KB2460050 [3] | ? |
1.626.7600.20602 | 623 КБ | 2010-01-07 | Microsoft Office 2010 (RTM) | Поддержка PR-37: Разъяснение использования объединителя нулевой ширины в индийских скриптах;[5] Эта версия поддерживает OpenType в Windows XP. |
1.626.7600.16385 | 628 КБ | 2009-08-04 | Microsoft Office 2010 (Бета) | ? |
612 КБ | 2009-07-14 | Windows 7 (RTM) | ? | |
1.626.7100.0 | 612 КБ | 2009-04-22 | Windows 7 RC | ? |
1.626.6002.22402 | 491 КБ | 2010-07-11 | Microsoft Office 2007 (SP2) Обновление безопасности KB2288621 [4] | MS10-063: Описание обновления безопасности для пакетов Office 2007: 14 сентября 2010 г. |
1.626.6002.18244 | 607 КБ | 2010-04-16 | Windows Server 2008 SP2, Windows Vista с пакетом обновления 2 (SP2) Обновление безопасности KB981322 [5] | MS10-063: Описание обновления безопасности для процессора сценариев Windows Unicode: 14 сентября 2010 г. |
1.626.6002.18005 | 607 КБ | 2009-04-11 | Windows Server 2008 SP2, Windows Vista с пакетом обновления 2 (SP2) | ? |
1.626.6001.18000 | 490 КБ | 2008-01-19 | Windows Server 2008 (RTM), Windows Vista с пакетом обновления 1 (SP1), VOLTSupplementalFiles (июль 2008 г.), MS VOLT 1.3 [6] (выпущено 31 июля 2008 г.), SIL FieldWorks, Keyman Desktop 7.1 | Поддерживает новые функции таблиц OpenType; улучшенная поддержка лигатур и контекстных форм в индийских скриптах с более простыми шрифтами |
1.626.6001.16510 | 491 КБ | 2007-04-18 | Windows Server "Longhorn" (Бета 3) | ? |
1.626.6000.20581 | 491 КБ (502 784 байта) | 2007-04-19 02:15:55 универсальное глобальное время | Виндоус виста Исправление KB936176 | ИСПРАВЛЕНИЕ: некорректное отображение полностью разложенных символов в форме NFD, закодированных в последовательностях из более чем 2 символов (затрагивает 114 латинских символов, разложенных на последовательности из 3 кодов) |
1.626.6000.16386 | 491 КБ (502 784 байта) | 2006-11-02 09:44:03 универсальное глобальное время | Виндоус виста Окончательный (окончательная первоначальная версия) | DirectX 10? WDDM? |
1.626.5756.0 | 491 КБ | 2006-10-13 | Microsoft Office 2007 Окончательный (окончательная первоначальная версия) | Поддерживает Ория и Каннада скрипты |
1.615.5384.4 | 484 КБ | 2006-06-17 | Виндоус виста (Бета 2) | DirectX 9? |
1.614.5315.0 | 454 КБ | 2006-03-13 | Microsoft Office 2007 (Бета 2) | Типографские особенности OpenType? |
1.613.5291.0 | 481 КБ (492 544 байта) | 2006-01-04 | Виндоус виста (Бета 1) | Microsoft VOLT 1.2 [7] |
1.609.5219.0 | 469 КБ | 2005-08-17 | Microsoft Office 12 Профессиональный (Beta 1) | Типографские особенности OpenType? |
1.606.5065.1 | ? | ? | Стороннее ПО | Поддерживает Монгольский сценарий |
1.606.5078.0 | ? | ? | Исправление для шрифтов SIL | ИСПРАВЛЕНИЕ: Объединение последовательностей меток в латинском шрифте может отображаться неправильно. |
1.601.5022.8 | 428 КБ | 2005-01-07 | Пакет включения Microsoft Sinhala для XP 0.42 | Поддерживает Сингальский сценарий |
1.473.4067.15 | 415 КБ (424 960 байт) | 2004-10-22 | Стороннее ПО | Microsoft Visual OpenType Layout Tool (VOLT) 1.1.225 обновить |
1.473.4067.0 | 415 КБ (424 960 байт) | 2004-10-22 | Стороннее ПО | Поддерживает Скрипт малаялам; VOLTSupplementalFiles (ноябрь 2004 г.); улучшение рендеринга до 3-х диакритических знаков с CGJ |
1.471.4063.0 | 415 КБ (424 960 байт) | 2004-02-04 | Microsoft Office 2003 (исправить), SIL FieldWorks (Помощник по фонологии речевых инструментов 3.0.1) | ? |
1.471.4030.0 | 404 КБ (413 184 байта) | 2004-04-15 | Microsoft Office 2003, Гугл Земля | |
1.468.4015.0 | ? KiB (? байтов) | ? | Паратекст 6 | Поддерживает Тибетское письмо. |
1.468.4011.0 | ? KiB (? байтов) | ? | ? | |
1.460.3707.0 | ? KiB (? байтов) | ? | MS VOLT 1.1.206 | Поддерживает Кхмерский шрифт |
1.453.3665.0 | ? KiB (? байтов) | ? | VOLTSupplementalFiles (август 2002 г.) | ? |
1.422.3790.1830 | 355 КБ (364 032 байта) | 2005-03-30 | Windows Server 2003 (SP1) | ИСПРАВИТЬ? |
1.421.3790.0 | 345 КБ (353 280 байт) | 2003-03-25 | Windows Server 2003 | Поддержка DirectX, GDI + и более новой модели драйвера дисплея |
1.420.2600.5969 | 397 КБ (406 016 байт) | 2010-04-16 | Windows XP (SP3) Обновление безопасности KB981322 [8] | MS10-063: Описание обновления безопасности для процессора сценариев Windows Unicode: 14 сентября 2010 г. |
1.420.2600.5512 | 397 КБ (406 016 байт) | 2008-04-14 | Windows XP Сборка 5512 (SP3) | ИСПРАВИТЬ? |
1.420.2600.3163 | 397 КБ (406 016 байт) | 2007-06-26 | Windows XP (SP2) Исправление KB939450 [9] | ИСПРАВЛЕНИЕ: функция GetCharacterPlacement неожиданно возвращает ноль |
1.420.2600.2791 | 397 КБ (406 016 байт) | 2005-11-05 | Windows XP (SP2) Исправление KB910466 [10] | ИСПРАВИТЬ: Вы можете получить сообщение об ошибке «MEM_BAD_POINTER» на компьютере под управлением Windows XP с пакетом обновления 2 |
1.420.2600.2180 | 397 КБ (406 528 байт) | 2004-08-12 | Windows XP Сборка 2180 (SP2) | Поддерживает Бенгальский и Малаялам скрипты; поддерживает сложную латынь (для вьетнамского языка); ИСПРАВЛЕНИЕ: лигирование контуров тона |
1.409.2600.1106 | 331 КБ (339 456 байт) | 2002-08-29 | Windows XP Сборка 1106 (SP1) | ? |
1.408.2600.1020 | 331 КБ (339 456 байт) | 2002-04-17 | Internet Explorer 6.0.2800.1106 (SP1) | ? |
1.407.2600.0 | 331 КБ (339 456 байт) | 2001-08-17 | Windows XP | Поддерживает Thaana, Гуджарати, Каннада, Гурмукхи (Пенджаби ), Сирийский и телугу скрипты |
1.405.2416.1 | 317 КБ (325 120 байт) | 2001-01-15 | Microsoft Office XP (2002), Microsoft Word 2000 (SP1) | Полностью поддерживает иврит, Деванагари и Тамильский скрипты |
1.400.2411.1 | 316 КБ (323 072 байта) | 2000-12-13 | Internet Explorer 6 [11] | ? |
1.325.2195.6692 | 308 КБ (315 664 байта) | 2003-06-19 | Windows 2000 SP4 (?) | ? |
1.325.2195.? | ? | 2001-09-25 | Распространяемый пакет установщика Microsoft Windows 2.0 для Windows 95 / 98 / Я KB827763 | Требуется для программ просмотра презентаций Powerpoint 2003 (и более поздних версий) Microsoft (которым в остальном требуется как минимум 98SE) в Windows 95 и 98 |
1.325.2195.1340 | 308 КБ (315 664 байта) | 2000-07-21 | Windows 2000 SP1 | Полностью поддерживает Арабский шрифт |
1.325.2180.1 | 316 КБ (323 584 байта) | 2000-06-08 | Windows Me | Улучшенный API для скриптов с двунаправленной и сложной разметкой; минимальная поддержка сценариев на арабском и иврите (без контекстных буквенных форм, требуется сопоставление символов совместимости в шрифтах) |
307 КБ (315 152 байта) | 2000-04-26 | Microsoft Global IME для Microsoft Office XP | ||
307 КБ (315 152 байта) | 1999-11-30 | Internet Explorer Версия 5.5, SP1 и SP2 | ||
1.175.0.1 | 268 КБ (274 432 байта) | 1999-04-05 | Windows 98 SE | Первый стабильный Uniscribe API; поддерживает простые алфавитные шрифты с разложенными диакритическими знаками (латинский, Греческий, Кириллица ) |
258 КБ (264 976 байт) | 1999-01-28 | Internet Explorer 5.01 | ||
1.163.1890.1 | 262 КБ (268 288 байт) | 1998-09-22 | Стороннее ПО | Снимок разметки многоязычного текста и сложных сценариев (MTLCS) (ранний выпуск для разработчиков) |
Универсальный движок формообразования
Скрипты с сложный текстовый макет имеют контекстные и нелинейные требования для правильного отображения своей типографики. Эти требования включают: лигатуры, где два последовательных символа должны быть объединены в одну фигуру (латынь, деванагари); переупорядочение, при котором некоторые символы должны отображаться перед буквой, за которой они следуют в реальном произношении (бенгальский, сингальский и другие индийские языки); и формирование контекста, как в рукописных шрифтах, где некоторые буквы должны изменить форму в зависимости от того, находятся ли они в начале, в середине или в конце слова (арабский, монгольский).
UniScribe использует несколько специфичных для скриптов механизмов формования для обработки типографики в поддерживаемых сложных скриптах; они реализованы в дополнение к общему движку для несложных скриптов (таких как кириллица, греческий, латинский и т. д.). В настоящее время используемые двигатели включают[2] Индийский (бенгальский, деванагари, гуджурати, гурмукхи, каннада и т. Д.), Арабский, хангыль, иврит, кхмерский, мьянманский и тайский / лаосский варианты.
Сложность стандарта Unicode и двусмысленность спецификации OpenType часто приводят к неполным или ошибочным реализациям сложного текстового макета. Механизмы формирования для конкретных сценариев работают от случая к случаю и не всегда обрабатывают общие функции шрифтов OpenType, что затрудняет поддержку новых сценариев программистам ОС и разработчикам шрифтов. Ошибки реализации очень сложно или невозможно исправить на более позднем этапе, не разбивая Обратная совместимость для существующих документов и шрифтов, часто требующих новых функций компоновки OpenType и переделки существующих шрифтов и механизмов визуализации типографики.[2][6][7][8]
В Windows 10 была проведена большая работа по рефакторингу для реализации обобщенной модели формирования, Universal Shaping Engine (USE). Этот механизм напрямую основан на свойствах глифов, определенных в стандарте Unicode, в надежде, что любой сложный сценарий с подходящим шрифтом будет поддерживаться без времени и усилий, необходимых для создания специального механизма формирования.[3]
ЕГЭ основан на обобщенной «универсальной кластерной модели», разработанной для индийских алфавитов, которая моделирует надмножество систем письма человека. Движок классифицирует каждый символ сложного скрипта на несколько категорий, базовых классов и подклассов. Например, предварительная индийская классификация включает в себя общие, слоговые и позиционные категории, далее разделенные на основание (число, согласный, буква тона, зависимый гласный и т. Д.), Базовый гласный (независимый гласный), число (присоединяющееся число Брахми), конечный , средние согласные и согласные-модификаторы, средние согласные, а также верхние, нижние, левые и правые согласные и гласные. Строки символов Юникода преобразуются в набор классов USE с использованием четко определенных правил, что делает композицию глифов стандартной процедурой и допускает межсимвольные взаимодействия, невозможные с текущими языковыми функциями, определенными в спецификациях OpenType.[2]
Универсальный движок шейпинга был представлен на встрече разработчиков OpenType в 2014 году; совместимый подход также был реализован открытым исходным кодом HarfBuzz формирователь текста. В Windows 10 USE обрабатывает в общей сложности 45 сложных скриптов: балийский, батак, брахми, бугийский, бухид, чакма, чам, дуплоян, египетские иероглифы, Гранта, Хануно, яванский язык, Кайти, Кая Ли, Харошти, Ходжки, Худавади, Лепча, Лимбу, Махаджани, Мандайский, Манихейский, Мейтей Майек, Моди, Монгольский, Н'Ко, Пахау Хмонг, Пхагс-па, Псалтырь пехлеви, Реджанг, Саураштра, Шарада, Сиддхам, Сингальский, Сунданский, Силоти Тагбанри, Тагалог Тай Ле, Тай Тхам (крайне несовершенно), Тай Вьет, Такри, Тибетский, Тифинаг и Тирхута.
Версии
Хотя Uniscribe стал доступен с Windows 2000, новые версии Uniscribe предоставили системе больше функций, а именно поддержку других систем письма. Более раннее обновление поддерживает отображение арабский и иврит, тогда Тайский и вьетнамский. С Windows XP, поддерживаются другие южноазиатские и ассирийские алфавиты.
Смотрите также
- Международные компоненты для Unicode
- OpenType
- Продвинутая типографика Apple
- Панго
- Графит (SIL)
- DirectWrite
Рекомендации
- ^ https://msdn.microsoft.com/en-us/goglobal/bb688099.aspx#W10 >
- ^ а б c d Джон Хадсон (10 мая 2016 г.). «Создание шрифтов для универсального механизма шейпинга» (PDF). Tiro Typeworks. Получено 2020-06-09.
- ^ а б Windows формирует языки мира - Эндрю Гласс
- ^ «RE: Шрифт Symbola (был: шрифт James Kass и Code2000)». Получено 2011-01-29.
- ^ Выпуск публичного обзора №37, Предложение по уточнению и закреплению функции ZERO WIDTH JOINER в индийских скриптах, Консорциум Unicode
- ^ Проблемы индийской типографики в текущих реализациях OpenType Layout - Джон Хадсон
- ^ Исправление макета Indic2 OpenType - Джон Хадсон
- ^ Помимо формования и к общей модели типографики OpenType - Джон Хадсон
- Примечания
- Не описывать
- Типография Microsoft
- Не подписывайтесь на MSDN
- Летний институт лингвистики. Не описывать версии