|
|
1.1 root 1: %!
2: % @(#)newpic newpic.ps 1.0b@(#) 10/27/89
3:
4: /s /stroke load def
5: /f /fill load def
6: /n /newpath load def
7: /c /closepath load def
8: /l /lineto load def
9: /g /setgray load def
10: /d /setdash load def
11: /rgb /setrgbcolor load def
12: /w /setlinewidth load def
13: /gs /gsave load def
14: /gr /grestore load def
15: /slj /setlinejoin load def
16: /clj /currentlinejoin load def
17: /magnification 1 def
18:
19: /PIC { % tx ty sx sy $ -- place origin at center
20: clippath pathbbox newpath
21: exch 4 -1 roll add 2 div 3 1 roll add 2 div translate
22: scale magnification magnification scale translate
23: } bind def
24:
25: /L { % p*N N p $
26: moveto { lineto } repeat
27: } bind def
28:
29: /rL { % p*N r N p $
30: moveto
31: 1 sub
32: { 3 1 roll 4 index 4 index 4 index arcto 4 { pop } repeat } repeat
33: pop
34: lineto
35: } bind def
36:
37: /T { % string noofspace width p $
38: moveto
39: 2 index stringwidth pop sub exch
40: dup 0 eq
41: { pop 1 index length div 0 3 -1 roll ashow }
42: { div 0 8#40 4 -1 roll widthshow }
43: ifelse
44: } bind def
45:
46: /AT { % string noofspace width $
47: 2 index stringwidth pop sub exch
48: dup 0 eq
49: { pop 1 index length div 0 3 -1 roll ashow }
50: { div 0 8#40 4 -1 roll widthshow }
51: ifelse
52: } bind def
53:
54: /Q { % llx lly urx ury $
55: 2 copy
56: moveto
57: 3 index exch lineto
58: 3 1 roll dup 3 1 roll lineto lineto
59: closepath
60: } bind def
61:
62: /rQ { % llx lly urx ury r $
63: 2 index 2 index 5 index add 2 div moveto
64: 3 copy 7 index 2 index 3 -1 roll arcto 4 { pop } repeat
65: 4 index 2 index 1 index 6 index 4 index arcto 4 { pop } repeat
66: 5 copy exch pop 2 index exch arcto 4 { pop } repeat
67: 2 index 5 1 roll arcto 5 { pop } repeat
68: closepath
69: } bind def
70:
71: /E { % 0 0 1 ang1 ang2 matrix
72: matrix currentmatrix
73: exch
74: concat
75: newpath
76: 6 1 roll
77: arc
78: setmatrix
79: } bind def
80:
81: /Sp { % p*N N p p $
82: 2 copy
83: moveto
84: 4 copy
85: exch 4 -1 roll add 2 div 3 1 roll add 2 div lineto
86: 5 -1 roll
87: {
88: 6 copy pop pop 2 copy
89: exch 8 -1 roll sub 6 div 3 index exch sub
90: exch 7 -1 roll sub 6 div 2 index exch sub
91: 6 2 roll 4 copy
92: exch 4 -1 roll exch sub 6 div 4 index add
93: 3 1 roll sub 6 div 2 index add
94: 6 2 roll
95: exch 4 -1 roll add 2 div 3 1 roll add 2 div
96: curveto
97: } repeat
98: pop pop
99: lineto
100: } bind def
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.