OpenType — формат масштабируемых компьютерных шрифтов . Производный от TrueType , он сохраняет базовую структуру TrueType, но добавляет множество сложных структур данных для описания типографского поведения. OpenType — зарегистрированная торговая марка Microsoft Corporation . [4] [5]
Спецификация была разработана в Microsoft, а к моменту публичного объявления в 1996 году в нее также внесла свой вклад компания Adobe Systems .
Благодаря широкой доступности и типографской гибкости, включая возможности обработки разнообразных вариантов поведения всех мировых систем письма , шрифты OpenType широко используются на основных компьютерных платформах.
OpenType берет свое начало в попытке Microsoft лицензировать передовую технологию типографики Apple GX Typography в начале 1990-х годов. Эти переговоры провалились, что побудило Microsoft двигаться вперед со своей собственной технологией, названной «TrueType Open» в 1994 году. [6] Adobe присоединилась к Microsoft в этих усилиях в 1996 году, добавив поддержку технологии контура глифов, используемой в ее шрифтах Type 1.
Совместные усилия были направлены на замену форматов шрифтов TrueType от Apple и PostScript Type 1 от Adobe , а также на создание более выразительной системы, которая обрабатывает точную типографику и сложное поведение многих мировых систем письма. Две компании объединили базовые технологии обоих форматов и добавили новые расширения, призванные устранить их ограничения. Для совместной технологии было выбрано название OpenType, о котором они объявили позже в том же году.
Adobe и Microsoft продолжали разрабатывать и совершенствовать OpenType в течение следующего десятилетия. Затем, в конце 2005 года, OpenType начал переход к открытому стандарту под эгидой Международной организации по стандартизации (ISO) в рамках группы MPEG , которая ранее (в 2003 году) приняла OpenType 1.4 по ссылке для MPEG-4 . [5] [7] [8] [9] Принятие нового стандарта достигло официального утверждения в марте 2007 года как стандарта ISO ISO/IEC 14496-22 (MPEG-4 Часть 22) под названием Open Font Format (OFF, не путать с Web Open Font Format ), [10] иногда называемого «Спецификация Open Font Format» (OFFS). [5] Первоначальный стандарт был технически эквивалентен спецификации OpenType 1.4 с соответствующими языковыми изменениями для ISO. [11] Второе издание OFF было опубликовано в 2009 году (ISO/IEC 14496-22:2009) и было объявлено «технически эквивалентным» «спецификации формата шрифта OpenType». [12] [13] С тех пор спецификации OFF и OpenType поддерживаются синхронизированными. OFF — это свободный, общедоступный стандарт. [14]
К 2001 году на рынке появились сотни шрифтов OpenType. Adobe завершила преобразование всей своей библиотеки шрифтов в OpenType к концу 2002 года. К началу 2005 года [обновлять]стало доступно около 10 000 шрифтов OpenType, причем библиотека Adobe составляла около трети от общего числа. К 2006 году все крупные шрифтовые литейщики и многие мелкие разрабатывали шрифты в формате OpenType. [ необходима цитата ]
Версия Unicode 3.2 (опубликованная в 2002 году) представила селекторы вариаций как механизм кодирования для представления определенных форм глифов для символов. [15] Однако Unicode не указал, как визуализаторы текста должны поддерживать эти последовательности. В конце 2007 года последовательности вариаций для коллекции Adobe-Japan1 были зарегистрированы в базе данных Unicode Ideographic, [16] что привело к реальной необходимости решения OpenType. Это привело к разработке подтаблицы cmap
Format 14, которая была представлена в версии OpenType 1.5. [17]
В версии Unicode 6.0 эмодзи были закодированы как символы в Unicode в октябре 2010 года. [18] Несколько компаний быстро отреагировали, чтобы добавить поддержку эмодзи Unicode в свои продукты. Поскольку эмодзи Unicode обрабатываются как текст, а цвет является существенным аспектом опыта эмодзи, это привело к необходимости создания механизмов для отображения многоцветных глифов.
Apple, Google и Microsoft независимо друг от друга разработали различные решения для работы с цветными шрифтами для использования в OS X , iOS , Android и Windows .
sbix
в свой формат TrueType в OS X 10.7, [19] в то время как Google предложила добавить таблицы CBDT
и CBLC
в OFF.COLR
таблицу для сопоставления глифа с набором глифов, которые накладываются слоями, и CPAL
таблицу для определения цветов.SVG
таблицу, которая может представлять многоцветные глифы с использованием масштабируемой векторной графики .Все эти предложения были включены в третье издание OFF (ISO/IEC 14496-22:2015). [20] Microsoft добавила таблицы CBDT
, CBLC
, COLR
, CPAL
, и SVG
в OpenType версии 1.7, [17] и sbix
таблицу в OpenType версии 1.8. [17] Microsoft реализовала поддержку всех различных цветовых форматов в Windows 10 версии 1607 («Anniversary Update»). [21]
OpenType 1.9 представил вторую версию таблицы COLR
, которая добавляет дополнительные графические возможности. [17] Google изначально предложила улучшенную версию и совместно разработала ее с Microsoft. Улучшенные графические возможности включают поддержку трех типов градиентов, аффинных преобразований , режимов композиции и смешивания и настраиваемых повторно используемых компонентов. [22] Эти улучшения дают таблице все графические возможности таблицы, за исключением обводки. Они также добавляют режимы композиции и смешивания, поддержка которых считается необязательной для таблицы (так как они реализованы в SVG как эффекты фильтров). [23] Кроме того, улучшения таблицы интегрированы с вариациями шрифтов OpenType, что невозможно с таблицей. Улучшенная таблица поддерживается в движке браузера Chromium , начиная с версии 98. [24]COLR
SVG
SVG
COLR
SVG
COLR
По крайней мере с версии 1.4 спецификация OpenType поддерживала "TrueType Collections", функцию формата, которая позволяет хранить несколько шрифтов в одном файле. Такой формат полезен для распространения целой гарнитуры (семейства шрифтов) в одном файле.
Объединяя связанные шрифты в один файл, можно совместно использовать идентичные таблицы шрифтов, что позволяет более эффективно хранить данные. Кроме того, отдельные шрифты имеют ограничение на количество глифов в 65 535 глифов, а файл коллекции предоставляет механизм «режим разрыва» для преодоления этого ограничения в одном файле шрифта. (Однако каждый шрифт в коллекции все еще имеет ограничение в 65 535.) Файл коллекции TrueType обычно имеет расширение файла «.ttc».
Однако спецификация описывала только файлы коллекций, используемые в сочетании с глифами, представленными в виде контуров TrueType или в виде растровых изображений. Потенциально существовала возможность предоставить те же преимущества хранения и количества глифов шрифтам, использующим глифы формата CFF (расширение .otf). Но спецификация явно не допускала этого.
В 2014 году Adobe объявила о создании OpenType Collections (OTCs), файла шрифта Collection, который объединяет шрифты, использующие глифы формата CFF. [25] Это обеспечило значительные преимущества хранения для шрифтов CJK , которые Adobe и Google совместно разрабатывали. Например, шрифт Noto CJK OTC примерно на 10 МБ меньше, чем сумма четырех отдельных OTF, из которых он состоит. [26] Использование Collection также позволило объединить очень большое количество глифов в один файл, как это было бы необходимо для шрифта pan-CJK. [27]
Явная поддержка коллекций с глифами формата CFF была включена в спецификацию OpenType в версии 1.8. [17] Чтобы отразить эту более широкую применимость, был принят термин «коллекция OpenType», заменивший «коллекция TrueType».
14 сентября 2016 года Microsoft объявила о выпуске OpenType версии 1.8. Это объявление было сделано совместно с Adobe, Apple и Google на конференции ATypI в Варшаве. [28] OpenType версии 1.8 представила «OpenType Font Variations», которая добавляет механизмы, позволяющие одному шрифту поддерживать множество вариантов дизайна. [29] Шрифты, использующие эти механизмы, обычно называют « Variable fonts ».
OpenType Font Variations повторно представляет методы, которые ранее были разработаны Apple в TrueType GX и Adobe в Multiple Master fonts . Общая идея этих форматов заключается в том, что один шрифт включает данные для описания нескольких вариаций контура глифа (иногда называемых «мастерами»), и что во время отображения текста растеризатор шрифта может интерполировать или «смешивать» эти вариации, чтобы получить непрерывный диапазон дополнительных вариаций контура. [30]
Концепция полностью параметрических шрифтов была исследована в более общем плане Дональдом Э. Кнутом в системе METAFONT , представленной в 1978 году. [31] Эта система и ее последователи никогда не были широко приняты профессиональными дизайнерами шрифтов или коммерческими программными системами. [32] Форматы TrueType GX и Multiple Master, прямые предшественники OpenType Font Variations, были представлены в 1990-х годах, но также не получили широкого распространения. Позднее Adobe отказалась от поддержки формата Multiple Master. [33] Это привело к вопросам о том, может ли повторное введение подобной технологии быть успешным. Однако к 2016 году ландшафт отрасли изменился в нескольких отношениях. В частности, появление веб-шрифтов и мобильных устройств вызвало интерес к адаптивному дизайну и поиску способов предоставления большего количества вариантов шрифтов в эффективном по размеру формате. Кроме того, в то время как 1990-е годы были эпохой агрессивной конкуренции в технологии шрифтов, часто называемой «войной шрифтов», [34] [35] [36] OpenType Font Variations был разработан в результате сотрудничества с участием нескольких крупных поставщиков. [37]
Font Variations интегрирован в OpenType 1.8 всеобъемлющим образом, что позволяет использовать большинство ранее существовавших возможностей в сочетании с вариациями. В частности, вариации поддерживаются как для контуров глифов TrueType, так и для CFF, для хинтинга TrueType, а также для механизмов OpenType Layout. Единственными частями OpenType, для которых вариации не поддерживаются, но могут быть потенциально полезны, являются таблица 'SVG' для цветных глифов и таблица MATH для макета математических формул. Таблица 'SVG' использует встроенные XML-документы, и никаких улучшений для вариации графических элементов в документах SVG не предлагалось. Однако улучшение таблицы COLR в OpenType 1.9 предоставило векторный формат для цветных глифов с поддержкой вариаций. [38]
OpenType 1.8 использовал таблицы, изначально определенные Apple для TrueType GX (таблицы avar, cvar, fvar и gvar). Он также представил несколько новых таблиц, включая новую таблицу для версии 2 формата CFF (CFF2) и другие новые таблицы или дополнения к существующим таблицам для интеграции вариаций в другие части формата шрифта (таблицы HVAR, MVAR, STAT и VVAR; дополнения к таблицам BASE, GDEF и name). [17]
OpenType использует общую структуру sfnt шрифта TrueType, но добавляет несколько опций Smartfont, которые расширяют типографские и языковые возможности шрифта.
Данные контура глифов в шрифте OpenType могут быть в одном из двух форматов: контуры формата TrueType в таблице 'glyf' или контуры формата Compact Font Format (CFF) в таблице 'CFF '. (Имя таблицы 'CFF ' состоит из четырех символов и заканчивается пробелом.) Данные контура CFF основаны на формате шрифта языка PostScript Type 2. Однако спецификация OpenType (до 1.8) не поддерживает использование контуров PostScript в файле шрифта TrueType Collection. После версии 1.8 оба формата поддерживаются в переименованной "OpenType Collection".
Для многих целей, таких как макет, не имеет значения, какой формат данных контура, но для некоторых целей, таких как растеризация , это важно. Стандарт OpenType не определяет формат данных контура: скорее, он приспосабливает любой из нескольких существующих стандартов. Иногда термины типа «OpenType (PostScript flavor)» (= «Type 1 OpenType», «OpenType CFF») или «OpenType (TrueType flavor)» используются для указания того, какой формат контура содержит конкретный файл шрифта OpenType.
OpenType имеет несколько отличительных характеристик:
Практически все приложения и современные операционные системы имеют базовую поддержку Roman и работают со шрифтами OpenType так же хорошо, как и с другими, более старыми форматами. Преимущества, выходящие за рамки базовой поддержки Roman, включают расширенную языковую поддержку через Unicode , поддержку сложных письменных шрифтов, таких как арабский и индийские языки , и расширенную типографскую поддержку языков с латинским алфавитом, таких как английский .
Windows 3.1 и все последующие версии Windows поддерживают шрифты OpenType TT (.ttf). Windows 2000 и более поздние версии поддерживают шрифты OpenType PS (.otf). Adobe Type Manager может добавить базовую поддержку Roman шрифтов OpenType PS в Windows 95 , 98 или Me .
Расширенная языковая поддержка через Unicode для OpenType и TrueType присутствует в большинстве приложений для Microsoft Windows [ нужна ссылка ] (включая Microsoft Office Publisher , большинство приложений Adobe и Microsoft Office 2003, но не Word 2002), CorelDRAW X3 и более поздние версии, а также во многих приложениях Mac OS X, включая собственные приложения Apple, такие как TextEdit , Pages и Keynote . Он также широко поддерживается в свободных операционных системах, таких как Linux (например, в многоплатформенных приложениях, таких как AbiWord , Gnumeric , Calligra Suite , Scribus , OpenOffice.org 3.2 и более поздних версиях, [39] и т. д.).
Поддержка OpenType для сложных письменных шрифтов до сих пор в основном появилась в приложениях Microsoft в Microsoft Office , таких как Microsoft Word и Microsoft Publisher . Adobe InDesign предоставляет обширные возможности OpenType на японском языке , но напрямую не поддерживает ближневосточные или индийские шрифты — хотя доступна отдельная версия InDesign, которая поддерживает ближневосточные шрифты, такие как арабский и иврит. Недокументированная функциональность во многих приложениях Adobe Creative Suite 4, включая InDesign, Photoshop и Illustrator, позволяет использовать ближневосточные, индийские и другие языки, но официально не поддерживается Adobe и требует сторонних плагинов для предоставления пользовательского интерфейса для этих функций.
Расширенная типографская поддержка языков латинского алфавита впервые появилась в таких приложениях Adobe, как Adobe InDesign , Adobe Photoshop и Adobe Illustrator . QuarkXPress 6.5 и ниже не были совместимы с Unicode. Следовательно, текст в этих версиях QuarkXPress, содержащий что-либо, кроме символов WinANSI или MacRoman, не будет правильно отображаться в шрифте OpenType (и в других форматах шрифтов Unicode, если на то пошло). Однако в QuarkXPress 7 Quark предложил поддержку, аналогичную Adobe. CorelDRAW от Corel представил поддержку типографских функций OpenType в версии X6. Mellel , текстовый процессор Redlers, работающий только на Mac OS X, заявляет о паритете типографских функций с InDesign, но также расширяет поддержку до сценариев с письмом справа налево; то же самое делает и Classical Text Editor, специализированный текстовый процессор, разработанный в Австрийской академии наук.
По состоянию на 2009 год [обновлять]популярные текстовые процессоры для Microsoft Windows не поддерживали расширенные функции типографики OpenType . Расширенные функции типографики реализованы только в высокопроизводительном программном обеспечении для настольных издательских систем . Текстовый движок из Windows Presentation Foundation , который представляет собой реализацию OpenType в виде управляемого кода , является первым API Microsoft Windows , который предоставляет возможности OpenType разработчикам программного обеспечения, поддерживая шрифты OpenType TrueType и OpenType CFF ( Compact Font Format ). Он поддерживает расширенные функции типографики, такие как лигатуры , цифры старого стиля , варианты наклонных букв , дроби , надстрочные и подстрочные индексы , малые заглавные буквы , замена глифов , несколько базовых линий , контекстные и стилистические альтернативные формы символов, кернинг, выравнивание по уровню строки , символы Ruby и т. д. [40] Приложения WPF автоматически получают поддержку расширенных функций типографики. Лигатуры OpenType доступны в Microsoft Office Word 2010. [ 41]
В Windows 7 появился DirectWrite — аппаратно-ускоренный собственный API DirectX для рендеринга текста с поддержкой многоформатного текста, независимых от разрешения контурных шрифтов, ClearType , расширенных функций типографики OpenType, полной поддержки текста Unicode, макетов и языков, а также API низкоуровневой рендеринга глифов. [42]
В Mac OS X приложения с поддержкой AAT , работающие в Mac OS X 10.4 и более поздних версиях, включая TextEdit и Keynote, получают значительную поддержку OpenType. Поддержка OpenType от Apple в Mac OS X 10.4 включала в себя большинство продвинутых типографских функций, необходимых для языков с латинским алфавитом , таких как малые заглавные буквы , цифры старого стиля и различные виды лигатур, но она еще не поддерживала контекстные альтернативы, позиционные формы или переупорядочивание глифов, как это делается библиотекой Uniscribe от Microsoft в Windows. Таким образом, Mac OS X 10.4 не предлагала поддержку арабских или индийских алфавитов через OpenType (хотя такие алфавиты полностью поддерживаются существующими шрифтами AAT). Mac OS X 10.5 улучшила поддержку OpenType и поддерживает арабские шрифты OpenType. Постепенно поддержка типографики OpenType улучшилась в более новых версиях Mac OS X (например, Mac OS X 10.10 может гораздо лучше обрабатывать длинные контекстные замены глифов).
Bitstream Panorama , движок для компоновки строк и текста от Bitstream Inc. , обеспечивает полную поддержку OpenType для компактных и стандартных азиатских шрифтов, арабского, иврита, индийских, тайского и более 50 других языков мира. Приложение поддерживает ключевые таблицы OpenType, необходимые для компоновки строк, такие как BASE, определение глифов (GDEF), позиционирование глифов (GPOS) и замена глифов (GSUB). Panorama также обеспечивает полную поддержку расширенных функций типографики, таких как лигатуры, росчерки, капители, орнаменты, порядковые числительные, старшие, старый стиль, кернинг, дроби и т. д.
В свободных программных средах, таких как Linux , рендеринг OpenType обеспечивается проектом FreeType , входящим в свободные реализации X Window System, такие как X.org . Сложная обработка текста обеспечивается либо pango (вызывая HarfBuzz ), либо Qt . Системы XeTeX и LuaTeX позволяют документам TeX использовать шрифты OpenType, а также большинство их типографских функций. Linux-версия LibreOffice 4.1 и более новые поддерживают многие типографские функции OpenType, поскольку она начала использовать более сложную библиотеку формирования текста HarfBuzz. [43]
В качестве шага в создании шрифта свойства шрифта OpenType (кроме контура) могут быть определены с помощью удобочитаемого текста, сохраненного в формате Adobe OpenType Feature File. [44] [45] Файлы функций OpenType обычно имеют имя, заканчивающееся расширением .fea
. Эти файлы могут быть скомпилированы в двоичный контейнер шрифта ( .ttf
или .otf
) с помощью Adobe Font Development Kit for OpenType (AFDKO), FontLab , FontForge , Glyphs , DTL OTMaster, RoboFont или FontTools.
Теги OpenType Layout представляют собой 4-байтовые строки символов, которые идентифицируют сценарии, языковые системы, функции и базовые линии в шрифте OpenType Layout. Реестр тегов Layout Microsoft устанавливает соглашения по именованию и использованию этих тегов. Функции OpenType создаются с помощью тегов при создании сценариев функций, которые описывают, как следует манипулировать символами для создания желаемого элемента. Эти сценарии функций могут быть созданы и включены в шрифты OpenType с помощью расширенных редакторов шрифтов, таких как FontLab Studio , AsiaFont Studio и FontForge .
Поддержка тегов макета операционными системами и приложениями сильно различается.
Теги скрипта идентифицируют скрипты (системы письма), представленные в шрифте OpenType. Каждый тег соответствует смежным диапазонам кодов символов в Unicode. Тег скрипта может состоять из 4 или менее строчных букв, например, arab
для арабского алфавита , cyrl
для кириллицы и latn
для латинского алфавита . math
Тег скрипта, добавленный Microsoft для Cambria Math , был добавлен в спецификацию. [46] [47]
Теги языковых систем идентифицируют языковые системы, поддерживаемые шрифтом OpenType. Примеры включают в себя ARA
для арабского , ESP
для испанского , HYE
для армянского и т. д. В целом, коды не совпадают с кодами ISO 639-2 . [48]
Эти теги можно использовать для выбора локальных вариантов букв, которые имеют один и тот же код Unicode. [48] [49] Например, сербский и македонский кириллический алфавит имеет некоторые специфичные для языка глифы для определенных букв, которые являются лишь предпочтительными и не являются строго обязательными. [ необходима цитата ]
Список возможностей OpenType с расширенным описанием приведен в списке типографских возможностей .
Теги базовой линии имеют определенное значение при использовании в горизонтальном направлении письма (используется в таблице HorizAxis таблицы «BASE»), вертикальном направлении письма (используется в таблице VertAxis таблицы «BASE») или в обоих направлениях.
Набор таблиц, которые относительно точно отражают метрики шрифтов TeX, был изначально добавлен Microsoft в Cambria Math для поддержки их нового движка редактирования и рендеринга математики в Office 2007 и более поздних версиях. [50] [51] Это расширение было добавлено в стандарт ISO (ISO/IEC CD 14496-22 3-е издание) в апреле 2014 года. [52] Дополнительные сведения (об использовании) доступны в техническом отчете Unicode 25 [53] и техническом примечании 28. [54] Некоторые из новых технических функций (отсутствующих в TeX), такие как «врезки» (которые позволяют кернинг нижних и верхних индексов относительно их оснований [55] ) и растянутые стеки [56] были запатентованы Microsoft. [57] [58] [59] Windows 8 поддерживает математику OpenType вне приложений MS Office через компонент RichEdit 8.0. [60]
Помимо продуктов Microsoft, XeTeX и LuaTeX также имеют некоторую поддержку для этих таблиц; поддержка более ограничена в XeTeX, поскольку он использует традиционный механизм рендеринга математики TeX (таким образом, он не может в полной мере использовать некоторые новые функции математики OpenType, которые расширяют TeX), в то время как LuaTeX использует более гибкий подход, изменяя некоторые внутренние элементы рендеринга математики TeX; по словам Ульрика Виета (2009): «Точнее говоря, в то время как XeTeX предоставляет доступ только к параметрам OpenType как к дополнительным \fontdimens, LuaTeX использует внутреннюю структуру данных, основанную на объединенном наборе параметров OpenType и TeX, что позволяет предоставлять отсутствующие значения, которые не поддерживаются ни в математических шрифтах OpenType, ни в традиционных математических шрифтах TeX». [56] В 2013 году XeTeX также получил поддержку врезок. [61]
Движок рендеринга Gecko , используемый веб-браузером Firefox, также поддерживает некоторые математические функции OpenType в своей реализации MathML . [62] [63]
По состоянию на 2024 год [обновлять]набор шрифтов, поддерживающих математику OpenType, включает: Asana-Math , Cambria Math, DejaVu Math TeX Gyre , Garamond Math , Latin Modern Math , Libertinus Math , Neo Euler , STIX Math , XITS Math , Fira Math , GFS Neohellenic Math и четыре шрифта TeX Gyre: Bonum Math, Pagella Math, Schola Math, Termes Math. [64] [65] Совсем недавно шрифты Latin Modern и TeX Gyre (« LM-изация » стандартных шрифтов PostScript [66] ) также получили поддержку математики OpenType. [67] [68] [69] [70] По состоянию на 2014 год [обновлять]количество математических шрифтов OpenType все еще довольно ограничено. [71] Более актуальный список поддерживается на веб-сайте Mozilla . [64]
Появление эмодзи Unicode создало потребность в форматах TrueType и OpenType для поддержки цветных глифов. Apple добавила расширение цвета в Mac OS X Lion (а также в iOS 4+). Шрифты были расширены цветными PNG изображения в таблице sbix. [72] [73] [74] Google использовал похожее расширение со встроенными цветными растровыми изображениями, содержащимися в паре таблиц, таблицах CBDT и CBLC. [75] Версия Google реализована в FreeType 2.5. [76]
В Windows 8.1 Microsoft также добавила поддержку цвета в шрифты, впервые реализованную в шрифте Segoe UI Emoji . [73] [77] [78] [79] Однако реализация Microsoft полностью основана на векторной графике : [73] [80] в реализации Microsoft были добавлены две новые таблицы OpenType: таблица COLR допускает многослойные глифы, а CPAL («Цветовая палитра») фактически определяет цвета для слоев. Многослойный подход позволяет реализовать обратную совместимость, а также изменять рендеринг в зависимости от цветового контекста, окружающего глифы. [73] По словам Адама Твардоха : «На TypeCon [2013] Грег Хичкок разъяснил предполагаемые роли палитр: первая палитра используется по умолчанию для цветовых ситуаций «темный на светлом», а вторая палитра предназначена для использования в ситуациях «светлый на темном». Дополнительные палитры должны выбираться пользователем». [76]
Mozilla и Adobe разработали другое векторное расширение, добавив встроенные документы SVG (поддерживающие цвет, но также и анимацию) в таблицу SVG. Таблица SVG также позволяла использовать цветовые палитры, определенные в таблице CPAL. [81] Поддержка была впервые реализована в Firefox 26. [75]
Adobe, Mozilla, Google и Microsoft представили свои цветовые расширения для стандартизации с помощью ISO/IEC 14496-22. [82] Новые таблицы для каждого из них были затем добавлены в OpenType версии 1.7. [83] Таблица sbix от Apple изначально поддерживалась только в шрифтах AAT, но позже была добавлена в OpenType версии 1.8. [84] Microsoft Windows 10 Anniversary Update стала первой ОС, которая поддерживала все четыре цветовых расширения шрифтов, а Microsoft Edge стал первым браузером, который это сделал. [85] [86]
В OpenType версии 1.8.3 спецификация для таблицы SVG была пересмотрена и стала более ограниченной, что обеспечивает большую ясность для реализаций и лучшую совместимость. Apple поддерживает пересмотренную спецификацию в Safari 12, iOS 12 и macOS 10.14. [87] Реализация в Microsoft Windows также соответствует этой редакции.
В 2005 году Adobe выпустила новую технологию в своем пакете приложений Creative Suite , которая предлагает решение для « gaiji » (外字, по-японски «внешний символ»). Идеографические письменные шрифты, такие как китайский и японский, не имеют фиксированных наборов символов. Они используют тысячи глифов обычно и десятки тысяч реже. Не все глифы, когда-либо изобретенные и используемые в восточноазиатской литературе, даже были каталогизированы. Типичный шрифт может содержать от 8000 до 15000 наиболее часто используемых глифов. Однако время от времени автору требуется глиф, отсутствующий в выбранном шрифте. Такие отсутствующие символы известны в Японии как gaiji, и они часто мешают работе.
Другим аспектом проблемы гайдзи является проблема различных глифов для определенных символов. Часто определенные символы писались по-разному в течение определенного периода времени. Не является чем-то необычным, когда названия мест или личные фамилии используют историческую форму символа. Таким образом, конечный пользователь , использующий стандартные шрифты, может оказаться неспособным правильно написать либо свое собственное имя, либо название места, где он живет.
Было разработано несколько способов борьбы с гайдзи. Решения, которые рассматривают их как символы, обычно присваивают им произвольные значения Unicode в областях частного использования (PUA). Такие символы не могут использоваться вне среды, в которой известна ассоциация частного Unicode с формой глифа. Документы, основанные на них, не являются переносимыми. Другие установки рассматривают гайдзи как графику. Это может быть обременительно, поскольку компоновка и композиция текста не могут применяться к графике. Их нельзя искать. Часто их рендеринг выглядит иначе, чем окружающие символы, поскольку механизм рендеринга графики обычно отличается от механизма рендеринга глифов из шрифтов.
Технология SING (Smart INdependent Glyphlets) [88] [89] , дебютировавшая в Adobe Creative Suite 2, позволяет создавать глифы, каждый из которых упакован как отдельный шрифт, в некотором роде. Такой упакованный глиф называется глифлетом . Формат, который Adobe обнародовала, основан на OpenType. Пакет состоит из контура глифа в форме TrueType или CFF (контуры в стиле PostScript); стандартных таблиц OpenType, объявляющих метрики и поведение глифа в композиции; и метаданных, дополнительной информации, включенной для идентификации глифа, его владельца и, возможно, произношения или лингвистической категоризации. Глифлеты SING можно создавать с помощью приложения Fontlab SigMaker3.
Спецификация SING гласит, что глифлеты должны перемещаться вместе с документом, в котором они используются. Таким образом, документы являются переносимыми, не оставляя опасности символов в документе, которые не могут быть отображены. Поскольку глифлеты по сути являются шрифтами OpenType, стандартные шрифтовые машины могут отображать их. Спецификация SING также описывает формат XML , который включает все данные, необходимые для воссоздания глифлета в двоичной форме. Для представления типичного глифлета может потребоваться от одного до двух килобайт.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ){{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ){{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ){{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ){{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка )