Рейтинг@Mail.ru

Наши друзья и партнеры

UnixForum




Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Приемы работы в Ubuntu.
Глава 5: Система X11

Оригинал: "Ubuntu Hacks: Chapter 5 - X11"
Авторы: Кайл Ранкин, Джонатан Оксер, Билл Чайлдерс (Kyle Rankin, Jonathan Oxer, Bill Childers)
Дата публикации: June 2006
Перевод: Н.Ромоданов
Дата перевода: сентябрь 2010 г.

Совет # 53: Устанавливаем красивые шрифты

В Ubuntu рабочие столы GNOME и KDE сконфигурированы так, что в них используются некоторые очень красивые шрифты, но есть ряд хитростей, которыми можно воспользоваться и сделать их еще лучше.

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

Не все шрифты одинаковы

Шрифты могут создаваться разнообразными способами и иметь различные форматы файлов. В каждой операционной системе есть свой собственный способ управления шрифтами и их визуализации. Некоторые шрифты представляют собой растровые изображения, которые просто отображаются на экране, тогда как другие имеют векторный формат, поэтому их можно увеличивать и уменьшать и печатать с высоким разрешением. Некоторые из них поставляются в виде пакета, в котором есть одновременно как растровый, так и векторный форматы: первые используются для выдачи изображения на экран, а вторые используются при печати или для создания файлов в таких выходных форматах, как PDF. А некоторые поставляются сразу семейством шрифтов (families), в состав которого наряду с базовым шрифтом входят сразу несколько вариантов, таких как полужирный шрифт и курсив, что позволяет получить гораздо лучшие результаты, чем просто использовать один базовый шрифт и применять к нему алгоритмические преобразования.

Управление шрифтами с помощью пакета Defoma

В Ubuntu используется пакет Defoma - "Debian Font Manager" ("Менеджер пакетов Debian"), который упрощает управление шрифтами и осуществляет централизованное управление шрифтами для всех приложений. Управление шрифтами в приложениях может сильно различаться, поэтому, когда на вашем компьютере устанавливается новый шрифт, не всегда очевидно, как сообщать каждому из приложений о том, что шрифт существует и где его можно найти.

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

Первое, что нужно сделать, это убедиться, что ваша система настроена таким образом, чтобы для управления шрифтами использовался пакет Defoma. Запустите:

$ sudo dpkg-reconfigure defoma

Если в настоящий момент пакет Defoma не настроен для управления шрифтами, вам будет задан вопрос о том, хотите ли использовать этот пакет; ответьте "Да".

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

$ sudo defoma-reconfigure

Настройка рендеринга экранных шрифтов

Разные дисплеи имеют различные характеристики и то, что хорошо выглядит на экране с ЭЛТ, не обязательно хорошо смотрится на жидкокристаллическом дисплее. В Ubuntu предоставлен ряд параметров настроек шрифтов, которые можно найти в разделе System→Preferences→Font (Система → Натройки → Шрифт) (см. рис. 5-7).

Настройка шрифтов GNOME

Рис.5-7. Настройка шрифтов GNOME

Вы можете в соответствии с вашими предпочтениями изменить шрифты, используемые в системе по умолчанию,, но если у вас есть ЖК-дисплей, обратите внимание на параметр субпиксельного сглаживания, который находится в пункте Font Rendering (Рендеринг шрифта). Каждый пиксель в ЖК состоит из трех под-пикселей, по одному для красного, зеленого и синего цветов. Субпиксельное сглаживание меняет настройку субпикселей так, чтобы шрифты отображались настолько гладко, насколько это возможно.

Доступ к дополнительным настройкам (показаны на рис. 5-8) можно получить с помощью нажатия кнопки Details (Подробности), расположенной в нижнем правом углу.

Дополнительные настройки шрифтов в GNOME

Рис.5-8. Дополнительные настройки шрифтов

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

Разрешение экрана

Когда шрифт используется для отображения текста на экране, то для того, чтобы определить, какого размера должен быть текст, необходимо выполнить преобразование между различными единицами измерений. Часто размеры указываются в пунктах (points), которые использовались (достаточно непоследовательно!) в течение сотен лет в печатном производстве. В настоящее время большинство людей считают, что один пункт равен 1/72 дюйма, но если вы скажете вашему компьютеру отобразить, например, текст размером в 18 пунктов, то для того, чтобы рассчитать какое количество пикселей будут равны 18/72 (т. е. 1 / 4) дюйма для вашего конкретного экрана, он должен знать разрешение экрана.

Разрешение экрана обычно указывается в dpi или в точках на дюйм. Для того, чтобы выяснить горизонтальное и вертикальное разрешения экрана, измерьте его ширину и высоту, а затем разделите эти значения на количество пикселей, которое можно узнать в разделе System→Preferences→Screen Resolution (Система → Настройки → Разрешение экрана). Например, типичный так называемый 17-дюймовый LCD дисплей будет иметь физические размеры около 13,3 дюйма на 10,75 дюймов и будет работать в своем родном разрешении 1280x1024 пикселей. Это дает горизонтальное разрешение 1280 ÷ 13,3 = 96,2 точек на дюйм и вертикальное разрешение1024 ÷ 10,75 = 95,3 точек на дюйм. В обоих случаях это достаточно близко к так называемому разрешению в 96 точек на дюйм.

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

Сглаживание

С помощью настройки сглаживания Smoothing фактически происходит управление уровнем сглаживания, который применяется при отображении шрифтов. Если сглаживание отсутствует, то это может сильно сказаться на ясности изображения шрифтов, в частности, при изображении их на ЖК-дисплее. Сглаживание резких углов и краев тонких линий осуществляется с помощью заполнения визуальных пробелов, имеющих промежуточные оттенки серого. Если у вас есть ЖК-дисплей, то для достижения наилучшего внешнего вида шрифтов вы должны в качестве настройки Smoothing (Сглаживание) выбрать значение Subpixel (Субпиксельное).

Хинтинг

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

Выполнение точного хинтинга требует от процессора больше ресурсов и зависит от того, сколько текста должен отображать компьютер, но, в конечном счете, текст, который изображается, будет более ровный, более гладкий и более удобный для чтения. Вы можете в разделе деталей настройки рендеринга шрифтов Font Rendering Details выбрать один из четырех уровней хинтинга: None (Не использовать), Slight (Слабый), Medium (Средний) и Full (Полный). Разница может показаться практически незаметной, если вы не привыкли внимательно рассматривает текст и не знаете, на что обращать внимание, но если у вас довольно современная машина, стоит включить хинтинг. На ЖК дисплеях вы, в частности, можете от этого получить большое преимущество, поскольку текст станет более удобным для чтения и снизится нагрузка на глаза.

Субпиксельное сглаживание

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

В подавляющем большинстве ЖК дисплеев используется порядок расположения субпикселей RGB (красный - зеленый - синий), но в некоторых дисплеях используется обратный прядок расположения субпикселей BGR (синий - зеленый - красный). Кроме того есть вариации этих двух параметров, в некоторые изготовители располагают субпиксели вертикально вместо расположения рядом друг с другом. Выберите вариант, который соответствует структуре вашего конкретного монитора и это позволит компьютеру как можно лучше выполнять работу по сглаживанию экранных шрифтов.

Установка основных шрифтов Microsoft

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

$ sudo apt-get install msttcorefonts

Пакет msttcorefonts является частью репозитария multiverse, поэтому он не доступен в стандартной настройке Ubuntu, и вам прежде, чем вы сможете установить пакет, возможно, потребуется обратиться к разделу "Изменение списка репозитария пакетов" [Совет # 60].

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

Установка шрифтов TrueType из систем Macintosh и Windows

В Ubuntu установка шрифтов TrueType выполняется очень легко. На рабочем столе или в окне браузера файлов нажмите клавиши Ctrl-L для доступа к окну Open Location ("Открыть месторасположение"), а затем наберите fonts:/// и нажмите кнопку Open ("Открыть"). После этого вы увидите список всех шрифтов, к которым есть доступ в вашей системе. Перетащите новый шрифт TrueType с рабочего стола или окна файлового менеджера в окно списка шрифтов и он будет автоматически установлен, а когда в следующий раз приложения будут запущены, он станет им доступен через пакет Defoma.

Но это, на самом деле, не столь просто, если шрифты берутся из системы Macintosh, поскольку в Mac OS шрифты снабжаются дополнительной информацией в специальном формате, который напрямую Linux читать не может. Перед тем, как перетаскивать шрифты Mac OS в ваш директорий fonts:///, вам нужно их преобразовать с помощью утилиты, которая называется fondu и которую можно установить следующим образом:

$ sudo apt-get install fondu

После этого скопируйте ваш директорий с шрифтами Mac OS на вашу Linux машину и выполните внутри этого директория следующую команду:

$ fondu *

которая создаст сконвертированные файлы TTF.

Подсказка

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


Назад Оглавление Вперед

Поделиться: