
- •Лекция 4. Компьютерные шрифты Язык Adobe PostScript
- •Растровые и векторные изображения
- •Битовые (растровые) шрифты
- •Векторные шрифты
- •Контурные (векторные) шрифты
- •Содержимое шрифтового файла
- •Форматы шрифтовых файлов
- •Формат PostScript
- •Формат TrueType
- •В чем преимущество TrueType-шрифтов?
- •Формат ОреnТуре
- •В чем преимущество ОреnТуре-шрифтов?
- •Символ (Знак) –объекты, (буква, цифра и знак препинания и т.Д. ) из ячейки таблицы кодировки
- •Проблема шрифтовых файлов форматов ОреnТуре и TrueType
- •Межплатформенная совместимость шрифтов
- •Проблемы комплекта знаков
- •Растровые шрифты для экрана
- •Как происходит растеризация шрифтов
- •Проблемы растеризации
- •Для чего нужен хинтинг (hinting)
- •Проблемы кодирования шрифтовых файлов
- •Специальные или альтернативные шрифтовые файлы
- •Знаки вне стандарта Unicode
- •Выходное разрешение и качество шрифта
- •Приблизительность экранного представления
- •Шрифты в Windows
- •Как устанавливать шрифты?
- •Поиск нужных знаков
- •Утилита Character Map (Windows)
- •Системы управления шрифтами
Проблемы растеризации
Нарушение пропорций символа.
Нарушение симметричности некоторых символов.
Нарушение единства символов.
Смыкание штрихов.
Выпадение точек.
Нарушение формы округлых букв.
3
4
5
6
Для чего нужен хинтинг (hinting)
Для того чтобы требуемые пикселы оказались включены в контур и форма знака воспроизводилась с максимальной точностью, нередко приходится прибегать даже к изменению формы контура. Для достижения этого шрифтовой файл снабжается специальной инструкцией (подпрограммой), которая называется хинтингом (hinting).
Она улучшает форму знака, представленного относительно небольшим числом пикселов, если применяется шрифт мелкого кегля или у выводного устройства очень низкое разрешение.
Очертание
знака очень редко полностью совпадает
с сеткой. Особенно при низком разрешении
(как на экране компьютера, показанном
на рисунке 1), очертания часто попадают
в неудобные положения. У верхнего
знака центры только нескольких пикселов
оказываются внутри контура, поэтому
буква отображена лишь наполовину.
По этой причине программисты вводят
специальные инструкции или подпрограммы
(хинт)
при кодировании шрифта, которые заставляют
изменить форму контура так, чтобы были
включены нужные пикселы, как показано
на рис 2
Таблицы ASCII и Unicode
Все кодировки подразделяются на
восьмибитовые(однобайтовые) - 256 символов
шестнадцатибитовые (двубайтовые) - 65 636 знаков
Не все версии обеих операционных систем позволяют обеспечить доступ ко всем знакам, содержащимся в шрифтовых файлах. Это возможно только в системах, поддерживающих кодовую таблицу Unicode. К ним относятся Macintosh OS X и Windows NT 4, Windows 2000 и Windows XP. Фирмы Microsoft и Apple объявили, что Unicode станет поддерживаться во всех будущих обновлениях их операционных систем.
Кодовая таблица Unicode — это международный стандарт, который, как и другие шрифтовые стандарты, обеспечивает соответствие определенных знаков определенным числовым кодам. А коды используются компьютерными системами для обращения к конкретным знакам в шрифтовом файле.
До Unicode единственным межплатформенным стандартом кодирования был стандарт ASCII (American Standard Code for Information Interchange — американский стандартный код обмена информацией), который использовал только коды от 0 до 127. Если текст сохранен в файле этого формата, его можно передавать и читать, независимо от того, какой шрифт и какая операционная система использовались для записи, поскольку коды, передающие текст, имеют стандартные значения.
Например, ASCII-код 72 означает заглавную латинскую букву Н.
Стандарт Unicode расширяет кодовую схему, включая знаковые комплекты для нелатинскях
алфавитов. Большинство шрифтовых файлов стандарта Unicode, например, для азиатских идеографических языков, двухбайтовые (double-byte) и могут содержать более 65 000 знаков.
Таблица ASCII
Проблемы кодирования шрифтовых файлов
Процесс присвоения знакам числовых значений называется кодированием (encoding). До того как Macintosh и Windows стали поддерживать стандарт Unicode, они использовали разные кодовые схемы (таблицы). Таблицы совпадали в основной части комплекта ASCII, но различались в знаках, имеющих коды после 128, так называемые знаки старших разрядов (high-bit). Результатом стало то, что документы, кодировавшиеся на одной компьютерной платформе, на другой очень часто отображались некорректно.
Двубайтовый способ описания, использующий 2¹⁶=65536 символов, некоторое время существовал в качестве идеи, затем был реализован фирмой Microsoft как стардарт, поддерживаемый программами Microsoft Office и некоторыми другими программами. А в операционной системе Windows NT двубайтовые коды генерируются непосредственно клавиатурой.
Момент перехода на этот стандарт, называемый Unicode, помнится многим как кошмар: новая версия WinWord вдруг стала рисовать квадратики на экране вместо русскоязычных текстов (бедный Word безуспешно пытался найти в старых шрифтах двубайтовые номера), а в других программах (не поддерживающих Unicode) текст, набранный в WinWord любимым Times New Roman, вдруг превращался из кириллического текста в бессмысленный набор символов с умляутами и ксанфами. Со временем проблема почти исчезла, так как появились разнообразные конверторы для старых шрифтов, самый известный из них - ttfconv. Это бесплатная утилита очень небольшого размера.
Для конвертации необходимо перенести конвертируемые шрифты в отдельную директорию, поскольку операционная система «не позволит» изменять шрифты в папке Fonts. Далее выполняется команда ttfconv.exe *.ttf, затем шрифты надо перенести обратно в папку Fonts.