106 Компьютерные представления текста. Предпечатная подготовка
Компьютерное описание
шрифта
Когда пользователь Windows говорит о шрифтах, подразумеваются, как
правило, шрифты TrueType или PostScript, то есть шрифты в контурном
описании. (Иногда употребляется термин «векторный». К сожалению, он
не вполне удачен, так как возможна путаница с настоящими векторными
шрифтами, очертания символов в которых описываются отрезками пря¬
мых. С такими шрифтами могут работать перьевые плоттеры, создающие
изображение не из точек, а из непрерывных линий.)
Имеем ли мы дело с истинными векторными шрифтами, шрифтами
формата PostScript или TrueType либо с текстом, преобразованным в кри¬
вые,- всегда речь идет об определенном способе математического описа¬
ния формы. Типы кривых, использумых для описания, различаются. Для
векторных шрифтов это прямые, для TrueType - кривые второго порядка,
для PostScript-шрифтов - кривые третьего порядка. Для пользователя
совершенно неважен тип описания, существенно лишь, что во всех этих
случаях исходное изображение не имеет разрешения (фиксированного
числа точек на единицу длины). Конечно, печатающее устройство (если
только это не перьевой плоттер) и монитор воспроизводят не непрерыв¬
ную линию, а набор точек. Поэтому при выдаче на экран или печати про¬
исходит растеризация, то есть перевод описания формы как набора линий
в описание ее как совокупности отдельных точек. Собственно процесс ра¬
стеризации заключается в вычислении положения точек, составляющих
контур на экране или при печати. При этом учитываются не только харак¬
теристики линии, но и особенности устройства, предназначенного для
вывода. Естественно, чем выше разрешение, тем из большего числа точек
состоит контур и, следовательно, тем ближе изображение к идеально глад¬
кой линии.
Для текста важна прорисовка каждого мельчайшего штриха. Поэтому
любой символ в формате TrueType или PostScript имеет значительно боль¬
ше характеристик, чем просто фигура такой же формы. Эти параметры
позволяют оптимально воспроизводить символы разных размеров при раз¬
личных характеристиках печати. В общем случае можно сказать, что сло¬
во, буква определенного шрифта кегля 9 - это не то же самое, что буква
того же шрифта кегля 35. Например, при мелких кеглях некоторые слабо
изогнутые контуры могут быть заменены на прямые. От размера зависят
и некоторые характеристики текста в целом, например, кернинг обычно
Компьютерное описание шрифта
107
включается только начиная с определенного кегля (для мелкого текста
кернинговые пары могут выглядеть как слипшиеся буквы).
Растровое описание символа зависит от разрешения печати. Зная разре¬
шение, нетрудно вычислить число точек, которые приходятся на опреде¬
ленную часть страницы (занимаемую буквой или другим знаком). Фор¬
мально подсчитанное число в большинстве случаев, как правило,
оказывается дробным. Полученные значения не округляются механичес¬
ки, а корректируются так, чтобы свести к минимуму искажения контуров.
Для этого используются определенные инструкции разметки символов,
описывающие, например, толщину вертикальных и горизонтальных эле¬
ментов. В результате сохраняются как пропорции конкретного знака, так
и равенство параметров, которые должны совпадать у всех знаков (к при¬
меру, толщина вертикальных штрихов или засечки). Нетрудно себе пред¬
ставить, как выглядел бы текст при отсутствии такой корректировки, осо¬
бенно если учесть, что толщина некоторых элементов букв может
составлять одну-две точки печатающего устройства. Исходя из этих сооб¬
ражений, обычно не рекомендуется преобразовывать буквы в кривые
и сохранять текст в растровых форматах.
Для TrueType-шрифтов существуют строгие инструкции по формирова¬
нию контура любого знака. Хранятся эти инструкции в файле шрифта. Там
же могут быть записаны готовые растровые образы (bitmap) для экранно¬
го воспроизведения знаков наиболее распространенных размеров. Систе¬
ма выполняет лишь минимальные действия по воспроизведению инструк¬
ций. В отношении PostScript-шрифтов основная нагрузка возложена на
систему-растеризатор, а расчеты выполняются непосредственно при выво¬
де. Экранные изображения формирует программа ATM (Adobe Type
Manager), образ для печати строит растровый процессор - RIP (Raster
Image Processor).
На примере со шрифтами можно судить об относительности принципа
WYSIWYG (What You See Is What You Get) - что на экране, то и на печа¬
ти. Поскольку разрешение для экрана существенно отличается от разре¬
шения при печати, реальные bitmap-образы букв тоже разные. К тому же
растеризация PostScript-шрифтов осуществляется в разных программах.
Текст на экране может отличаться от напечатанного как в лучшую, так
и в худшую сторону. Особенно много сюрпризов ожидает вас при выводе
на PostScript-устройство (например, фотонаборный автомат) изображения
с некорректно построенными TrueType-шрифтами. Хотя теоретически эти
шрифты прозрачны для любого выводного устройства, но некоторые ха¬
рактеристики кривых, не существенные при выводе на экран (72 dpi) или
лазерный принтер (600 dpi), могут «не устроить» RIP при печати на