|
|
1.1 root 1: static char *PS_head[] = {
2: "%ps_include: begin",
3: "save",
4: "/ed {exch def} def",
5: "{} /showpage ed",
6: "{} /copypage ed",
7: "{} /erasepage ed",
8: "{} /letter ed",
9: "36 dict dup /PS-include-dict-dw ed begin",
10: "/context ed",
11: "count array astore /o-stack ed",
12: "%ps_include: variables begin",
13: 0
14: };
15:
16: static char *PS_setup[] = {
17: "%ps_include: variables end",
18: "{dup mul exch dup mul add sqrt} /len ed",
19: "{2 copy gt {exch} if pop} /min ed",
20: "{2 copy lt {exch} if pop} /max ed",
21: "{6 array} /n ed",
22: "n defaultmatrix n currentmatrix n invertmatrix n concatmatrix /A ed",
23: "urx llx sub 0 A dtransform len /Sx ed",
24: "0 ury lly sub A dtransform len /Sy ed",
25: "llx urx add 2 div lly ury add 2 div A transform /Cy ed /Cx ed",
26: /* "rot dup sin abs /S ed cos abs /C ed",
27: /* "Sx S mul Sy C mul add /H ed",
28: /* "Sx C mul Sy S mul add /W ed",
29: /* "sy H div /Scaley ed",
30: /* "sx W div /Scalex ed",
31: /* "s 0 eq {Scalex Scaley min dup /Scalex ed /Scaley ed} if",
32: /* "sx Scalex W mul sub 0 max ax 0.5 sub mul cx add /cx ed",
33: /* "sy Scaley H mul sub 0 max ay 0.5 sub mul cy add /cy ed",
34: /* "urx llx sub 0 A dtransform exch atan rot exch sub /rot ed",
35: /* "n currentmatrix initgraphics setmatrix",
36: */ "sx Sx div /Scalex ed",
37: "sy Sy div /Scaley ed",
38: "cx cy translate",
39: "Scalex Scaley scale",
40: /* "rot rotate",
41: */ "Cx neg Cy neg translate",
42: "A concat",
43: "newpath",
44: "end",
45: "%ps_include: inclusion begin",
46: 0
47: };
48:
49: static char *PS_tail[] = {
50: "%ps_include: inclusion end",
51: "PS-include-dict-dw begin",
52: "clear o-stack aload pop",
53: "context end restore",
54: "%ps_include: end",
55: 0
56: };
57:
58: static char *Pic_setup[] = {
59: "%ps_include: variables end",
60: "{dup mul exch dup mul add sqrt} /len ed",
61: "{2 copy gt {exch} if pop} /min ed",
62: "{2 copy lt {exch} if pop} /max ed",
63: "{6 array} /n ed",
64: "n defaultmatrix n currentmatrix n invertmatrix n concatmatrix /A ed",
65: "urx llx sub 0 A dtransform len /Sx ed",
66: "0 ury lly sub A dtransform len /Sy ed",
67: "llx urx add 2 div lly ury add 2 div A transform /Cy ed /Cx ed",
68: /* "rot dup sin abs /S ed cos abs /C ed",
69: /* "Sx S mul Sy C mul add /H ed",
70: /* "Sx C mul Sy S mul add /W ed",
71: /* "sy H div /Scaley ed",
72: /* "sx W div /Scalex ed",
73: /* "s 0 eq {Scalex Scaley min dup /Scalex ed /Scaley ed} if",
74: /* "sx Scalex W mul sub 0 max ax 0.5 sub mul cx add /cx ed",
75: /* "sy Scaley H mul sub 0 max ay 0.5 sub mul cy add /cy ed",
76: /* "urx llx sub 0 A dtransform exch atan rot exch sub /rot ed",
77: /* "n currentmatrix initgraphics setmatrix",
78: */ "sx Sx div /Scalex ed",
79: "sy Sy div /Scaley ed",
80: "cx cy translate",
81: "B concat",
82: "newpath sx 2 div sy 2 div moveto sx neg 0 rlineto",
83: "0 sy neg rlineto sx 0 rlineto closepath clip",
84: "Scalex Scaley scale",
85: /* "rot rotate",
86: */ "Cx neg Cy neg translate",
87: "A concat",
88: "newpath",
89: "end",
90: "%ps_include: inclusion begin",
91: 0
92: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.