chiark / gitweb /
d359052d521e4ecda63535d54225978c2d4cc1d7
[pandemic-rising-tide.git] / cmyk.ps
1 %!
2
3 %   16^3 x    0 .. 3       1 Y per page
4 %    8^3 x    4 .. 7       4 Y per page      8 = 0 2 4 6 8 10 12 15
5 %             8 10 13 15
6
7 /paperx 595 def
8 /papery 842 def
9
10 /margin 18 def
11
12 /printareax paperx margin 2 mul sub def
13 /printareay papery margin 2 mul sub def
14
15 /textx 20 def
16 /texty 12 def
17
18 /szox printareax textx sub def
19 /szoy printareay texty sub def
20
21 % o = outer, i = inner, f = final
22
23 /margox 5 def
24 /margoy 5 def
25
26 /margix 2 def
27 /margiy 2 def
28
29 /margbx 10 def
30 /margby 10 def
31
32 % strid = stride
33
34 /klist_get {
35     klist
36         blackx
37         blacky  knx mul add
38         get
39 } def
40 /kentry_moveto {
41                 blackx                          stridix mul
42                  blacky  neg kmy add            stridiy mul
43                  szfy -0.5 mul add
44 } def
45
46 /someyellow {
47     
48     /gn     gm    1 add   def
49     /kmx    knx   1 sub   def
50     /kmy    kny   1 sub   def
51
52     /stridox  gridox  gn  div  def
53     /stridoy  gridoy  gn  div  def
54
55     /szix  stridox  margox sub  def
56     /sziy  stridoy  margoy sub  def
57
58     /stridix  szix  knx  div def
59     /stridiy  sziy  kny  div def
60
61     /szfx  stridix  margix sub  def
62     /szfy  stridiy  margiy sub  def
63
64     margin margin translate
65     textx  0      translate
66
67     0 1 gm {            /magenta exch def
68     0 1 gm {            /cyan    exch def
69
70     gsave
71
72         magenta                 stridox mul
73         cyan    neg gm add      stridoy mul  translate
74
75         szfy setlinewidth
76
77         0 1 kmx {       /blackx exch def
78         0 1 kmy {       /blacky exch def
79
80                 cyan            gn div
81                  magenta        gn div
82                  yellow         gn div
83
84                 klist_get base div
85
86                  setcmykcolor
87
88                 kentry_moveto moveto
89
90                 szfx 0 rlineto stroke
91
92         } for
93         } for
94
95     grestore
96
97     } for
98     } for
99
100 } def
101
102 /ranges {
103
104     0 1 gm {                    /yellow  exch def
105         someyellow
106
107     0 setgray
108     /Helvetica findfont 18 scalefont setfont
109     0 0 moveto
110     (Y) show
111     yellow (___) cvs show
112
113     finish_page
114
115     } for
116
117 } def
118
119 /finish_page {
120     0 setgray
121     /Helvetica findfont texty scalefont setfont
122     gsave
123
124      margin
125      papery  margin sub texty 2 mul sub  stridoy sub
126       translate
127       
128       0 1 kmx { /blackx exch def
129       0 1 kmy { /blacky exch def
130         kentry_moveto exch 0.75 mul exch moveto
131         klist_get (__) cvs
132         show
133       } for
134       } for
135     grestore
136
137     showpage
138 } def
139
140 /base 16 def
141
142 /gm 16 def
143
144 /knx 2 def
145 /kny 2 def
146
147 /klist [ 0 1 2 3 ] def
148 /ylist [ 0 1 2 3 5 8 11 15 ] def
149
150 /gridox szox def
151 /gridoy szoy def
152
153 %ranges
154
155 /ranges2 {
156
157 /gm 8 def
158
159 /gridox szox 2 div margbx sub def
160 /gridoy szoy 2 div margby sub def
161
162 0 1 1 { /yellowpage exch def
163 0 1 1 { /yellowx exch def
164 0 1 1 { /yellowy exch def
165
166 /yellowix
167   yellowpage            4 mul
168   yellowy    neg 1 add  2 mul add
169   yellowx                     add def
170
171 gsave
172  yellowx  gridox margbx add  mul
173  yellowy  gridoy margby add  mul
174  translate
175
176  /yellow  ylist yellowix get  def
177
178  someyellow
179
180 grestore
181
182 } for
183 } for
184 finish_page
185 } for
186
187 } def
188
189 /klist [ 4 5 6 7 ] def   ranges2
190 /klist [ 8 10 13 15 ] def ranges2