Подписаться на RSS рассылку
Главная » Новости » Продукты Microsoft » Изменения в обработке и визуализации текста в Windows 7

Дата: 25.02.2009

Изменения в обработке и визуализации текста в Windows 7

Одной из главных задач создания Windows 7 является улучшение графического представления информации и повышение точности передачи графики в системе. В связи с этим специальная группа разработчиков работает над усовершенствованием основополагающего компонента – механизма представления текста.

Необходимость качественного текста

Около 80% времени, которое пользователи проводят за компьютером, они читают или пишут. Это не должно никого удивлять, поскольку машина взаимодействует с человеком прежде всего посредством текста.

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

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

Совершенствуя существующие технологии

Текущая реализация механизма визуализации текста основывается на понятии пикселя устройства отображения. Масштаб текста определенного размера соотносится с количеством пикселей по горизонтали и вертикали на поверхности отображения. Так, текст высотой 10 пунктов соответствует примерно 80 пикселям на бумаге, отпечатанной на обычном принтере с разрешением 600 dpi, а на мониторе с разрешением 96 dpi его высота будет в среднем соответствовать 13 пикселям. Такое положение дел с физическим экраном с трудом соответствует качеству, требуемому для четкой передачи текста.

К счастью, пришествие технологии ClearType коренным образом улучшило четкость, как составляющую понятия качества текста. ClearType использует конструктивные особенности ЖК-мониторов и преимущества человеческого зрения. В ЭЛТ-мониторах расположение красных, зеленых и синих светоизлучающих элементов никак не связано с пиксельной решеткой. На жидкокристаллических же дисплеях каждый пиксель состоит из трех таких элементов: красного, зеленого и синего. Эти элементы (назовем их субпикселями) являются прямоугольниками шириной 1/3 пикселя и высотой 1 пиксель, и расположены они строго по порядку. Обычно графическое ПО рассматривает пиксель как единое целое. ClearType же воспринимает субпиксели как самостоятельные структурные единицы. Наши глаза могут воспринять как контраст цветов, так и контраст яркостей. Но на малых масштабах контраст цветов воспринимается почти в три раза слабее, поэтому текст, отображенный с помощью ClearType, выглядит монохромным и гладким. Это обусловило популярность технологии в последние годы.

Другая приятная особенность ClearType состоит в том, что технология улучшает представление текста, не создавая проблем с совместимостью отдельных приложений – действительный размер глифа не меняется, как не меняется расстояние между соседними знаками. Поэтому ClearType можно включить и выключить, не заботясь о сохранении выбранной возможности для программы или документа. Работа с этой опцией остается целиком на усмотрение пользователя. В Windows 7 еще значительнее совершенные механизмы управления ClearType

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

Одно из важнейших по сравнению с прошлым усовершенствований, сделанных нами в Windows 7, является переход от стандартной модели аппаратного пикселя к модели, выстраиваемой вокруг так называемого «аппаратно-независимого пикселя» (device independent pixel или DIP). Это некий «виртуальный пиксель», составляющий 1/96 дюйма в формате с плавающей точкой. В этой модели глиф (или любая другая геометрическая абстракция) может уменьшаться до размеров субпикселей и размещаться где угодно между двумя пикселями. Новый ClearType позволяет сжимать глифы для вписывания их в субпиксели экрана, наиболее близкие к их идеальному состоянию, тем самым обеспечивая наиболее качественную и естественную степень четкости отображаемого на экране текста, тем самым приближая его к состоянию, характерному для напечатанного на бумаге.

Приведенное ниже изображение показывает отличия между обыкновенным ClearType (вверху) и новым, естественным, ClearType в Windows 7 (внизу). Естественный ClearType требует использования новых API. Обратите внимание, как толщина букв в слове и расстояние между знаками, а также тщательнее соблюдаемые ширина и межсимвольное расстояние улучшают общее восприятие отображаемого слова. Заметьте, что все знаки отображаются в своем реальном размере, никакого искусственного регулирования межсимвольного расстояния не происходит.


ClearType (вверху) и естественный ClearType (снизу) в Windows 7

Возможность автоматически распределять текст по экрану так, чтобы обеспечивать его наиболее естественное представление, обладает приятным побочным эффектом, а именно – текст теперь может размещаться в строке без необходимой прежде привязки к физической разрешающей способности монитора. Для дизайнера интерфейсов это означает, что теперь стало возможным создавать приложения, будучи уверенным, что на всех остальных экранах оно будет отображено точно так же, как на его мониторе. Это особенно важно для локализованного ПО: переведенный текст будет иметь тот же шаблон, что и оригинальный.

Это усовершенствование в состоянии обеспечить более реалистичное отображение печатного документа на экране, и экранное изображение документа будет точнее соответствовать своему бумажному аналогу. Масштабирование изображения документа тоже выиграет.

Шрифты и управление ими

Windows Vista содержит на 40% больше встроенных шрифтов, чем Windows XP. А в Windows 7 планируется включить 235 шрифтов (добавится около 40 шрифтов). Кроме того, в Windows 7 добавлены некоторые возможности просмотра и классификации шрифтов в Explorer, чтобы немного облегчить работу с большими библиотеками сходных по начертанию шрифтов.

Использующиеся по умолчанию элементы управления в диалоговом окне представления шрифтов, а также выпадающие меню шрифтов в новом ленточном интерфейсе Windows 7 обновлены с тем, чтобы предоставить пользователю более разумные возможности выбора, в том числе на основе пользовательских профилей. В зависимости от характеристик профиля, таких, как язык системы, месторасположение, набор клавиатурных раскладок, в списке шрифтов не будут показаны шрифты для языков, не используемых в определенном пользователем культурном пространстве. Например, иноязычные шрифты не будут по умолчанию показаны пользователю, выбравшему только английские установки системы. Это улучшит концентрацию и послужит повышению эффективности работы в таких приложениях, как NotePad, WordPad и Paint. 

Долгое время шрифты рассматривались как ресурс, который должен быть доступен на системном уровне. Он «устанавливался» на компьютер и занимал некое место в пространстве имен файлов, управляемого ядром ОС. Например, шрифт Arial Black на самом деле не относится к той же группе, в которую входят шрифты Arial Narrow или Arial. Но ОС их группирует вместе на основании имени и для нее это просто разные шрифты с разными, но похожими именами. Именно поэтому при таком способе управления и представления вам не удастся увидеть разные версии одного шрифта одновременно.

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

Важное усовершенствование в системе управления шрифтами Windows 7 заключается в появлении понятия «набор шрифтов». Благодаря ему стало возможным разделение шрифтов, совместно использующих одно и то же выделенное пространство имен. Системный набор шрифтов подобен имеющемуся в нашем распоряжении сегодня, он создается и управляется системой, но наряду с ним стало возможным создание пользовательских наборов, управление которыми возможно при помощи приложения, в котором шрифты используются. Это позволяет использовать в определенном документе шрифты, характерные только для него, и создавать программы и дополнения, использующие собственные уникальные шрифты. Такое разделение устраняет необходимость не только переустановки и обновления шрифтов на системном уровне, но и потребность обеспечивать доступ к разным версиям одного и того же шрифта в разных наборах.

Новая система управления улучшает упорядочение шрифтов внутри набора. Она поддерживает группировку по толщине, плотности/ширине и наклону, когда шрифты сходного начертания имеют разные характеристики (жирный, обычный, курсив, контурный и т.д.) и объединяются в группы по семействам. Так, Arial Narrow становится принадлежащим к семейству шрифтов Arial.

Начертание шрифтов

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

OpenType представляет собой ответвление технологии TrueType Open, разработанной Microsoft в 1994-95 гг. Технология TrueType Open добавляет таблицы GSUB, GPOS, BASE, JSTF и GDEF в формат TrueType. Microsoft решила переименовать технологию в OpenType в 1996 г., и в том же году компания Adobe внедрила в нее свой формат CFF начертаний глифов. Сегодня OpenType используется для улучшения четкости текста, а также для создания новых впечатляющих шрифтов и начертаний для различных языков.

Несмотря на то, что OpenType существует и доступен для разработчиков относительно давно, использование этой технологии в Windows остается пока уделом ряда специализированных программ. Прежняя графическая подсистема Windows не в полной мере интегрировала OpenType для того, чтобы она стала основной технологией отображения текста. 

Windows 7 не только сама использует технологии OpenType, но и делает их доступными на программном уровне для приложений. Разработчики могут использовать их при создании приложений и экспериментировать, чтобы наилучшим образом применять эту технологию в основных сценариях работы программ.

Windows 7 содержит совершенно новый шрифт стандарта OpenType, Gabriola, созданный известным типографом Джоном Хадсоном (John Hudson). Изображения, приведенные ниже, иллюстрируют имеющиеся варианты начертаний. Обратите внимание, что основное отличие состоит в утонченности линий в разных начертаниях.




Следующее изображение иллюстрирует потенциал формы знаков в 8-ом по счету представлении комплекта стилей шрифта для того, чтобы по-разному отображать слово в зависимости от того, в каком именно месте в строке оно расположено.


По материалам статьи Worachai Chaoweeraprasit ведущего специалиста в группе разработки графических компонентов системы

E7Blog

Просмотров: 4055


Имя *:
Email:


Код *:

Copyright © 2008 - 2018 Программирование на Delphi для начинающих и не только.

Полнота авторских прав на все материалы, опубликованные на сервере DelphiDevelop.ru принадлежит их авторам.

Перепечатка материалов разрешается с указанием авторства и гиперссылки на первоисточник информации.