122
7. Интеллектуальное масштабирование шрифтов
Степень
свободы
Элементы
описания контура
Параметры и вид
функций
Пиксел
Протяженность
Вектор
Рис. 64.
Различные элементы
описания контура.
Дуга
Квадратичный
сплайн
g-коническая
функция
Кубический сплайн
(кривые Безье)
тырьмя математическими функциями. Однако при работе
с конкретным приложением NIMBUS может быть исполь¬
зована только в одном формате с соответствующей ему
функцией в качестве базового формата. Все же гибкость
программы NIMBUS является ее лучшим качеством, так как
позволяет выбирать тот формат из доступных, который
наиболее пригоден (см. рис. 68).
Три самых сложных представления (квадратичный
сплайн, g-конический сплайн, Безье) с относительной лег¬
костью могут быть математически переведены друг в друга.
Другими словами, когда дело касается описания контуров,
программы масштабирования могут быть гибкими. Только
описание контуров в AGFA, основанное на векторах и ок¬
ружностях, значительно труднее перевести в эти сложные
представления, поскольку требуется больше программист¬
ских усилий и ресурсов памяти.
Вид математического описания не влияет на качество
при выводе! Даже представления, основанного на векто¬
рах, вполне достаточно, если отдельные векторы настоль¬
ко коротки, что невозможно различать маленькие отрезки
прямой, из которой состоит кривая. Однако у представле¬
ний, основанных исключительно на векторах, теоретиче-
7. Интеллектуальное масштабирование шрифтов
123
Квадратичный сплайн
Pi “ (Xi.YtJe контрольная точка =
точка пересечения тангенциальных точек в начале и конце
Начало
Конец
U-1)
Po “ (Xo.Yo) и Р2 - (X2.Y2) = узловые точки
Р(1) ■ (X(t), Y(t)) - любая точка кривой 0 s t s 1
X(t)-Xo(1 - t)2 + 2 • Xi • (1 -1) • t + Хг • t2
Y(t)-Y0(1 -t)2+ 2 • Yi • (1 -1) • t ♦ Y2 - t2
Рис. 65.
Квадратичный
сплайн.
д-коничѳские функции
Pi “ (Xi.Yi) = контрольная точка =
точка пересечения тангенциальных точек в начале и конце
Po
Начало
Конец
(t-1)
Po " (Xo,Yo) и Рг - (X2.Y2) = узловые точки
P(t) - (X(t)pY(t)) - любая точка кривой Osisi
Хо - 11 2 (Х0 - S - Xt) - t (Хо - 2 - S
•X,*X2))
Х(1) -
1 - 2 (1 - S) -1 (1 -1)
Y(t) "
Y0 - t {2 (Y0 - S . Y,) - t (Y„ - 2 • S ■
Y, ♦Y,))
1 -2(1 - S) »1(1 -l)
SH -
a
—7— ■ крутизна
b
5 .
a _ SH
b- a 1 - SH
Рис. 66.
Общие конические
сечения.