blob: 31eda8f61b95681d1e5dedcf68279101e634d19c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
|
%!PS-Adobe-3.0 EPSF-3.0
%%Creator: (ImageMagick)
%%CreationDate: (Mon Aug 20 12:29:49 2007)
%%BoundingBox: 0 0 26 18
%%HiResBoundingBox: 0 0 26 18
%%DocumentData: Clean7Bit
%%LanguageLevel: 1
%%Pages: 1
%%EndComments
%%BeginDefaults
%%EndDefaults
%%BeginProlog
%
% Display a color image. The image is displayed in color on
% Postscript viewers or printers that support color, otherwise
% it is displayed as grayscale.
%
/DirectClassPacket
{
%
% Get a DirectClass packet.
%
% Parameters:
% red.
% green.
% blue.
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/DirectClassImage
{
%
% Display a DirectClass image.
%
systemdict /colorimage known
{
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ DirectClassPacket } false 3 colorimage
}
{
%
% No colorimage operator; convert to grayscale.
%
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ GrayDirectClassPacket } image
} ifelse
} bind def
/GrayDirectClassPacket
{
%
% Get a DirectClass packet; convert to grayscale.
%
% Parameters:
% red
% green
% blue
% length: number of pixels minus one of this color (optional).
%
currentfile color_packet readhexstring pop pop
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/GrayPseudoClassPacket
{
%
% Get a PseudoClass packet; convert to grayscale.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
color_packet 0 get 0.299 mul
color_packet 1 get 0.587 mul add
color_packet 2 get 0.114 mul add
cvi
/gray_packet exch def
compression 0 eq
{
/number_pixels 1 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add def
} ifelse
0 1 number_pixels 1 sub
{
pixels exch gray_packet put
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassPacket
{
%
% Get a PseudoClass packet.
%
% Parameters:
% index: index into the colormap.
% length: number of pixels minus one of this color (optional).
%
currentfile byte readhexstring pop 0 get
/offset exch 3 mul def
/color_packet colormap offset 3 getinterval def
compression 0 eq
{
/number_pixels 3 def
}
{
currentfile byte readhexstring pop 0 get
/number_pixels exch 1 add 3 mul def
} ifelse
0 3 number_pixels 1 sub
{
pixels exch color_packet putinterval
} for
pixels 0 number_pixels getinterval
} bind def
/PseudoClassImage
{
%
% Display a PseudoClass image.
%
% Parameters:
% class: 0-PseudoClass or 1-Grayscale.
%
currentfile buffer readline pop
token pop /class exch def pop
class 0 gt
{
currentfile buffer readline pop
token pop /depth exch def pop
/grays columns 8 add depth sub depth mul 8 idiv string def
columns rows depth
[
columns 0 0
rows neg 0 rows
]
{ currentfile grays readhexstring pop } image
}
{
%
% Parameters:
% colors: number of colors in the colormap.
% colormap: red, green, blue color packets.
%
currentfile buffer readline pop
token pop /colors exch def pop
/colors colors 3 mul def
/colormap colors string def
currentfile colormap readhexstring pop pop
systemdict /colorimage known
{
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ PseudoClassPacket } false 3 colorimage
}
{
%
% No colorimage operator; convert to grayscale.
%
columns rows 8
[
columns 0 0
rows neg 0 rows
]
{ GrayPseudoClassPacket } image
} ifelse
} ifelse
} bind def
/DisplayImage
{
%
% Display a DirectClass or PseudoClass image.
%
% Parameters:
% x & y translation.
% x & y scale.
% label pointsize.
% image label.
% image columns & rows.
% class: 0-DirectClass or 1-PseudoClass.
% compression: 0-none or 1-RunlengthEncoded.
% hex color packets.
%
gsave
/buffer 512 string def
/byte 1 string def
/color_packet 3 string def
/pixels 768 string def
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
x y translate
currentfile buffer readline pop
token pop /x exch def
token pop /y exch def pop
currentfile buffer readline pop
token pop /pointsize exch def pop
/Times-Roman findfont pointsize scalefont setfont
x y scale
currentfile buffer readline pop
token pop /columns exch def
token pop /rows exch def pop
currentfile buffer readline pop
token pop /class exch def pop
currentfile buffer readline pop
token pop /compression exch def pop
class 0 gt { PseudoClassImage } { DirectClassImage } ifelse
grestore
} bind def
%%EndProlog
%%Page: 1 1
%%PageBoundingBox: 0 0 26 18
userdict begin
DisplayImage
0 0
24 18
12.000000
24 18
0
0
ffffffffffffffffffffffffFEFEF2DAD5CBA59A7D7A6A3A654A0E654A0E7A6A3AA59A7D
DAD5CBFEFEF2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffEAEAE2A59A7D6A5312AC8E10DBB012EECA1AEECA1AC6AA12A68008
6A5312A59A7DEAEAE2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffDAD5CB7262329A7A0EF1D21AFEDA1AFEDA1AFEDA1AFEDA1AF1D21AEECA1A
E1BB13986D06726232DAD5CBffffffffffffffffffffffffffffffffffffffffffffffff
ffffffE2E2DA6A5312C6AA12FEDA1AFEE222FEE222FEE222FEE222FEE222FEE222FEDA1A
F1D21AEEC20ABA8E0A6A5312E2E2DAffffffffffffffffffffffffffffffffffffffffff
FEF2F2948A64AC8E10FEDA1AFEE222FEE222423212FEE222FEE222FEE222423212FEE222
FEDA1AEECA1AE1BB139A7A0E948A64FEFEF2ffffff423212423212423212ffffffffffff
DAD5CB6A5312F1D21AFEE222FEE222FEE222423212FEE222FEE222FEE222423212FEE222
FEE222F1D21AEEC20ADBB012654A0EDAD5CB423212FEE29ABA8202EEC20A423212423212
A59A7DAC8E10FEDA1AFEE222FEE222FEE222423212FEE222FEE222FEE222423212FEE222
FEE222FEDA1AEECA1ADBB012986D06423212423212FEE29ABA8202EEC20ABA8202423212
7A623AE1BB13FEDA1AFEE222FEE222FEE222423212FEE222FEE222FEE222423212FEE222
FEE222FEDA1AEECA1AE1BB13423212FEE29A423212FEE29ABA8202EEC20ABA8202423212
654A0EEECA1AFEDA1AFEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222
FEE222FEDA1AEECA1AE1BB13423212EEC20AFEE29A423212FEE29AFEE29ABA8202423212
654A0EEECA1AFEDA1AFEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222
FEE222FEDA1AEECA1ADBB012CA9A0A423212EEC20AFEE29AFEE29AEEC20ABA8202423212
726232DBB012F1D21AFEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222FEE222
FEE222F1D21AEEC20ADBB012BA8E0A7A6A3A423212EEC20AEEC20ABA8202423212ffffff
A59A7DA68008EECA1AFEDA1A423212FEE222FEE222FEE222FEE222FEE222FEE222FEE222
FEDA1A423212E1BB13D4A00A986D06A59A7Dffffff423212423212423212ffffffffffff
DAD5CB6A5312E1BB13F1D21AFEDA1A423212FEE222FEE222FEE222FEE222FEE222FEDA1A
423212EEC20ADBB012D4A00A654A0EDAD5CBffffffffffffffffffffffffffffffffffff
FEF2F2948A64A68008EEC20AEECA1AF1D21A423212423212423212423212423212423212
EEC20ADBB012D4A00A986D06948A64FEF2F2ffffffffffffffffffffffffffffffffffff
ffffffE2E2DA6A5312BA8E0AE1BB13EEC20AEECA1AEECA1AEECA1AEECA1AEEC20AE1BB13
DBB012D4A00AA680086A5312E2E2DAffffffffffffffffffffffffffffffffffffffffff
ffffffffffffDAD5CB726232986D06DBB012DBB012E1BB13E1BB13DBB012DBB012D4A00A
CA9A0A8A6202726232DAD5CBffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffEAEAE2A59A7D654A0E986D06BA8E0AD4A00AD4A00ABA8E0A986D06
654A0EA59A7DEAEAE2ffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffFEFEF2DAD5CBA59A7D7A6A3A654A0E654A0E7A6A3AA59A7D
DAD5CBFEFEF2ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
end
%%PageTrailer
%%Trailer
%%EOF
|