Рис. 2.15. Полосы из треугольников и четырехугольников
2.3.3. Текст
Очень редко в графическое изображение не включаются поясняющие надписи. Хотя в неграфических приложениях вывод информации в текстовом виде используется повсеместно, в графических вывод текста вызывает определенные сложности. В неграфических приложениях мы обычно имеем дело с небольшим набором символов, отображаемых единообразно7. В графических приложениях текст, как правило, формируется из символов разного размера, начертания, цвета и т.д. В распоряжение прикладного программиста также предоставляется множество шрифтов, определяющих форму символов на экране, таких как Times, Computer Modern или Helvetica.
Существуют два типа шрифтов - штриховой и растровый. Штриховой шрифт формируется по тому же принципу, что и прочие графические примитивы (рис. 2.16). Начертание символа определяется вершинами соответствующих прямолинейных и криволинейных отрезков. Если символ формируется из замкнутых контуров, то его внутреннюю область можно залить. Преимущество использования штриховых шрифтов заключается в том, что с ними можно обращаться в графической системе точно так же, как с любыми другими графическими объектами. Несомненным достоинством штриховых шрифтов является и сохранение начертания во всех деталях при выполнении геометрических преобразований - масштабировании или повороте. Поэтому определение символов набора выполняется только для одного, базового, размера, а все прочие получаются после выполнения стандартных геометрических преобразований - масштабирования и поворота.
Но следует отметить, что исходное описание шрифта из 128 или I 256 символов может быть довольно сложным и занимать много мес-l/111 u u i" i та в памяти. Стандартные шрифты PostScript создаются из отрезков . # полиномиальных кривых и демонстрируют все достоинства и недос\Э ГО О П IС S татки штриховых шрифтов. Существуют различные модификации шрифтов PostScript для приложений с высоким и низким разрешениРис. 2.16. Штриховой ем- Довольно часто разработчики пытаются справиться с проблемой шрифт медленной обработки таких объектов в процессе тонирования изо бражения, возлагая значительную часть связанных с этим операций на аппаратное обеспечение принтеров. Эта стратегия тесно связана с принципами организации систем "клиент/сервер" и будет рассмотрена в главе 3.