Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
%
2
% Version 3.3.2 prologue for BGI files - STARE or PRISM.
3
%
4
 
5
/#copies 1 store
6
/aspectratio 1 def
7
/fixlinewidth true def
8
/fixscreen false def
9
/font /Courier def
10
/formsperpage 1 def
11
/landscape false def
12
/linewidth 0 def
13
/magnification 1 def
14
/margin 0 def
15
/orientation 0 def
16
/prism false def
17
/resolution 128 def
18
/rotation 1 def
19
/scaletodevice false def
20
/screenheight 1280 def
21
/screenwidth 1024 def
22
/xoffset 0 def
23
/yoffset 0 def
24
 
25
/devres 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt def
26
 
27
/useclippath true def
28
/pagebbox [0 0 612 792] def
29
 
30
/inch {72 mul} bind def
31
/min {2 copy gt {exch} if pop} bind def
32
 
33
/kshow {kshow} bind def		% so later references don't bind
34
/show {show} bind def
35
 
36
/setup {
37
	counttomark 2 idiv {def} repeat pop
38
 
39
	landscape {/orientation 90 orientation add def} if
40
	prism {/fixscreen true def /scaletodevice true def} if
41
	prism linewidth 0 eq and {/linewidth .3 def} if
42
	fixscreen {devres 4 div orientation currentscreen 3 1 roll pop pop setscreen} if
43
 
44
	pagedimensions
45
	/scaling
46
		scaletodevice
47
			{devres resolution div truncate 72 mul devres div dup}
48
			{height margin sub screenheight div width margin sub screenwidth div}
49
		ifelse
50
	min def
51
	xcenter ycenter translate
52
	orientation rotation mul rotate
53
	xoffset inch yoffset inch translate
54
	magnification dup aspectratio mul scale
55
	scaling scaling scale
56
	screenwidth 2 div neg screenheight 2 div neg translate
57
 
58
	tietodevicespace
59
	linewidth scaling div setlinewidth
60
	1 setlinecap
61
	newpath
62
} def
63
 
64
/pagedimensions {
65
	useclippath {
66
		/pagebbox [clippath pathbbox newpath] def
67
	} if
68
	pagebbox aload pop
69
	4 -1 roll exch 4 1 roll 4 copy
70
	landscape {4 2 roll} if
71
	sub /width exch def
72
	sub /height exch def
73
	add 2 div /xcenter exch def
74
	add 2 div /ycenter exch def
75
	userdict /gotpagebbox true put
76
} def
77
 
78
/pagesetup {/page exch def} bind def
79
 
80
/tietodevicespace {
81
	fixlinewidth linewidth 0 gt and linewidth 1 lt and {
82
		/moveto {
83
			2 copy /Y exch def /X exch def
84
			transform round exch round exch itransform
85
			moveto
86
		} bind def
87
		/lineto {
88
			2 copy /Y exch def /X exch def
89
			transform round exch round exch itransform
90
			lineto
91
		} bind def
92
		/rlineto {Y add exch X add exch lineto} bind def
93
		/v V 0 get bind def
94
	} if
95
} def
96
 
97
/V [{moveto counttomark 2 idiv {rlineto} repeat stroke}] def
98
/v V 0 get bind def
99
/p {linewidth 2 div 0 360 arc fill} bind def
100
/pp {/ch exch def counttomark 2 idiv {moveto xc yc rmoveto ch show} repeat} bind def
101
 
102
/l {{scaling div} forall counttomark array astore 0 setdash} bind def
103
/c {setrgbcolor} bind def
104
 
105
/T {newpath moveto rlineto rlineto rlineto closepath eofill} bind def
106
 
107
/R {
108
	newpath moveto 1 index 0 rlineto 0 exch rlineto neg 0 rlineto closepath
109
 
110
} bind def
111
 
112
/f {
113
	dup dup
114
	/charwidth exch 6 mul def
115
	/xc exch -2.5 mul def
116
	/yc exch -3.5 mul def
117
	font findfont charwidth .6 div scalefont setfont
118
} bind def
119
 
120
/t {
121
	/str exch def
122
	gsave
123
	translate rotate
124
	xc yc moveto
125
	currentpoint
126
	{
127
		pop pop
128
		exch charwidth add exch
129
		moveto currentpoint
130
	} str kshow
131
	pop pop
132
	grestore
133
} bind def
134
 
135
/done {/lastpage where {pop lastpage} if} def