215.50K

Работа с текстом

1.

5 Работа с текстом

2.

Текстовые данные представлены в PostScript объектами типа string - строка.
Строка может содержать любую последовательность символов, заключенную
в круглые скобки.
Строка может быть помещена в стек, присвоена переменной или напечатана.
Для размещения строки на текущей странице интерпретатору PostScript
необходимо указать шрифт и его параметры.
Шрифт - это набор символов, имеющих единую гарнитуру.
PostScript-шрифты относятся к классу векторных.

3.

Порядок использования операторов для задания шрифта:
• поиск описания шрифта в словаре шрифтов
/имя_шрифта findfont
• задание кегля
размер scalefont
• установка шрифта в качестве текущего, которым будет печататься
текст
setfont
Например:
/Times findfont 14 scalefont
setfont

4.

Размещение строки текста на текущей странице («печать» строки):
• установка текущей точки
moveto или rmoveto
• размещение строки из стека на текущей странице
(с т р о к а) show
• по мере «печати» текущая точка перемещается в конец строки.

5.

Печать разными гарнитурами
50 100 moveto
currentpoint
/Helvetica findfont 12 scalefont setfont
(/Helvetica findfont 12 scalefont setfont) show
moveto
0 -20 rmoveto
/Symbol findfont 12 scalefont setfont
(/Symbol findfont 12 scalefont setfont) show

6.

Печать разными кеглями
50 40 moveto
/Times findfont 32 scalefont setfont
(T) show
/Times findfont 28 scalefont setfont
(i) show
/Times findfont 24 scalefont setfont
(m) show
/Times findfont 20 scalefont setfont
(e) show
/Times findfont 16 scalefont setfont
(s) show

7.

Печать «звездой»
/Bookman findfont 14 scalefont
setfont
200 120 translate
0 45 360 {0 0 moveto 0 -5 rmoveto ( Text asterisk) show rotate} for

8.

Печать по кругу
0 0 moveto
-40 10 40 {
dup
dup
mul
1600 exch sub sqrt moveto (Q) show} for
X2 + Y2 = R2
0 0 moveto
40 -10 -40 {
dup
dup
mul
1600 exch sub sqrt neg moveto (Q) show} for

9.

Печать по кругу
newpath
/CourierBold findfont 14 scalefont setfont
200 0 translate
255 0 0 setrgbcolor
45 rotate
0 0 moveto
-40 20 40 {
dup
dup
mul
1600 exch sub sqrt moveto (W) show} for
0 0 moveto
40 -20 -40 {
dup
dup
mul
1600 exch sub sqrt neg moveto (W) show} for

10.

Печать по кругу
Полярные координаты:
X = R cos α;
Y = R sin α
/Courier findfont 14 scalefont
newpath
200 200 translate
0 20 360 {

dup
40 exch
cos mul
exch
sin 40 mul
moveto (Q) show} for
setfont

11.

Печать по кругу
newpath
200 200 translate
0 0 moveto
45 rotate
/CourierBold findfont 14 scalefont
255 0 0 setrgbcolor
0 20 360 {
dup
40 exch
cos mul
exch
sin 40 mul
moveto (W) show} for
setfont

12.

http://postscript-vk.narod.ru/

13.

О словаре шрифтов
English     Русский Правила