Напишем программу, рисующую квадрат со
Прямоугольник
Напишем программу, рисующую квадрат со стороной один дюйм, расположенный в центре страницы:
newpath
200 300 moveto
0 72 rlineto
0 -72 rlineto
-72 0 rlineto
5 setlinewidth
stroke showpage
Использование приращений позволяет вам поместить квадрат в любое место страницы, исправив только одну строку. В этой программе новой является только предпоследняя строка
5 setlinewidth
Оператор setlinewidth позволяет вам установить ширину линии. В этой строке задана ширина 5/72 дюйма. Данный оператор действует на все линии, помещаемые на текущую страницу, пока не встретится другой оператор setlinewidth.
Рис. 1 (прогнать пример на принтере)
Наш квадрат, как вы заметили, имеет выщерблину в левом нижнем углу, так как у линий заметная толщина. Чтобы избежать этого явления, следует использовать новый оператор: closepath.
newpath
200 300 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
closepath
5 setlinewidth
stroke showpage
Оператор closepath добавляет к текущему пути линию, соединяющую текущую точку с начальной точкой адресуемой оператором moveto.
Научившись строить квадрат посмотрим как его можно заполнить. Для этой цели служит оператор fill, который "заливает" квадрат черными чернилами:
newpath
200 300 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
сlosepath
fill
showpage
Обратите внимание, что на этот раз вместо перенесения прямых на текущую страницу (stroke), мы вызываем оператор fill, который заполняет некоторым цветом очерченную область. Уровень серого цвета для заполнения фигуры задается аргументом оператора setgray -- числом в интервале от 0 (черный цвет) до 1(белый).
newpath
200 300 moveto
0 72 rlineto
72 0 rlineto
0 -72 rlineto
.6 setgray
fill
showpage
Заданный уровень серого действует до появления следующего оператора setgray. Если setgray не задан, то по умолчанию область заполняется черным цветом. Так как у каждого типа принтера свой способ построения полутонов, то полутона одной и той же PostScript-страницы, выведенной на разных принтерах могут не совпадать. То, что вы получите запустив эти программы может не совпадать по полутонам с рисунками в журнале.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий