Re: [gnome-cyr] шрифты



Привет!
> > Шрифты Монотайп (Ариал, Вердана, Таймс Нью Роман, Курьер Нью) были разработаны
> > _специально_ для отображения на мониторе. Достичь даже сравнимого качества при
> > использовании Type1 -- без шансов. Достичь сравнимого качества путём перегона
> > этих шрифтов в TrueType -- невозможно.
> Забавно. А почему monotype и не принтере не плохи? А как же next,
> использовавший DPS в том числе и для шрифтов? Он это делал через type 1
> или нет?
(С учётом приближающегося к обществу моего текста под FDL на эту тему текст этого моего ответа
пока под FDL =) :
Как вы возможно знаете, для отображения векторного шрифта (каковыми являются Type1 и TrueType)
необходимо сгенерировать растр, поскольку устройства вывода -- растровые.
Для этого используется специальная программа -- растеризатор (RIP).
По заданному описанию контуров символа растеризатор может такого на растрировать,
что мало не покажется. Типичным примером проблем возникающих при растеризации является
буква "Н" с левым и правым основными штрихами различной толщины. Чтобы избежать ситуации,
когда элементы букв, которые ДОЛЖНЫ быть одинаковыми становятся разными, в Type1 приделали хинтинг --
дополнительную информацию о символе предназначенную растеризатору и сообщающую где в символе
находятся вертикальные/горизонтальные палки и серифы. Дополнительно используются: обработка
ситуации палка+сериф в одной области, задание габаритов символов "ghost"-хинтами (если горизонтальный
хинт сверху или снизу не нужен, как например в той же самой "Н" без серифов, то всё равно сверху и/или
снизу ставится хинт размером 10-20 точек), специальная процедура обработки кривых близких к прямым
(называется "flex"). Для символов Kanji используются также диагональные хинты.
//Диагональные хинты для всех, а также хинты позволяющие задать расстояние _между_ элементами
были добавлены в OpenType//.
Достоинства хинтинга Type1 -- простота, очевидность и легкость добавления хинтинга к шрифту;
недостатки очевидны -- растеризатору этого мало, поэтому при низких разрешениях (монитор)
получается туфта.
TrueType разумеется тоже получил механизмы для поддержки растеризатора при низких разрешениях.
В ttf это называется "instructions". Основное отличие от Type1 состоит в том, что "инструкции" в ttf --
это (для каждого символа) программа на специальном язычке, объясняющая как расставить точки.
2 инструкции (? -- не помню точно, подробности есть на сайте freetype) покрыты патентом, что препятствует
в рамках штатовской юрисдикции создавать растеризаторы TrueType обладающие полной функциональностью.
Теперь про шрифты Монотайп (линк найду потом)...
Эти шрифты разрабатывались таким образом, чтобы при выводе на экран растеризатору было некуда ошибаться --
по сути дела для всех мелких размеров растр заранее известен и оптимизирован внешний вид именно этого
самого растра. Поэтому, в частности, при необходимости создать полужирное начертание пришлось одну точку
растра заменять на 2. Светлым (по ГОСТу) считается шрифт с соотношением толщины основного штриха к высоте
около 25%, жирным -- 38%. При фиксированной высоте удвоение толщины основного штриха 
(была одна точка -- стало две, в случае мелких кеглей) создаёт диапазон существенно бОльший чем нормальный-полужирный.
Опять-таки, необходимость "попасть в растр" привела к несколько искажённым пропорциям элементов символов.
Итог по "инструкциям":
достоинства -- теоретическая возможность создать шрифт очень хорошо смотрящийся на устройстве вывода с низким разрешением,
недостаток -- сложность создания "инструкций" приводящая к тому, что абсолютное большинство ttf-ов не имеют сколько-нибудь
приличных инструкций и нередко выглядят даже хуже чем Type1.
По абстрактным заявлениям "причастных к процессу": людей способных создавать хороший хинтинг для TrueType можно перечислить
поимённо. Единственное что утешает: как правило все дизайнеры шрифтов -- беззастенчивые вруны.

Пожалуй для первого раза достаточно =)

Валек

Attachment: pgpseXbldWVBW.pgp
Description: PGP signature



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]