-
Notifications
You must be signed in to change notification settings - Fork 1
/
frown.eps
166 lines (156 loc) · 7.3 KB
/
frown.eps
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
%!PS-Adobe-3.0 EPSF-3.0
%%Title: frown.eps
%%Creator: Xcircuit v3.0
%%CreationDate: Sun Jul 13 11:01:40 2003
%%Pages: 1
%%BoundingBox: 68 68 172 172
%%DocumentNeededResources:
%%EndComments
%%BeginProlog
%
% PostScript prolog for output from xcircuit
% Version: 2.4
%
% Electrical circuit (and otherwise general) drawing program
%
% Written by Tim Edwards 8/5/93--5/16/01 ([email protected])
% The Johns Hopkins University
%
%%BeginResource: procset XCIRCproc 2.4 1
% supporting definitions --- these are the primary xcircuit types.
/XCIRCsave save def
/topmat matrix currentmatrix def
/fontslant { /slant exch def [1 0 slant 1 0 0]
exch findfont exch makefont dup length dict /ndict exch def
{ 1 index /FID ne { ndict 3 1 roll put } { pop pop } ifelse } forall
ndict definefont pop} def
/ul { dup type /stringtype eq showflag 1 eq and { gsave
currentpoint topmat setmatrix 0 0 moveto 2 index stringwidth pop (_)
false charpath flattenpath pathbbox grestore exch pop 1 index
sub setlinewidth exch pop currentpoint 3 -1 roll add moveto 0
rlineto stroke moveto } if } def
/ol { dup type /stringtype eq showflag 1 eq and { gsave gsave
currentpoint topmat setmatrix 2 index stringwidth pop 3 index
true charpath flattenpath pathbbox grestore exch pop
exch pop topmat setmatrix (_) true charpath pathbbox grestore
exch pop 1 index sub setlinewidth exch pop currentpoint
exch 4 1 roll exch sub add moveto pop 0 rlineto stroke
moveto } if } def
/stW { gsave currentpoint newpath moveto true charpath flattenpath
pathbbox pop exch pop sub grestore } def
/Ts {mark Tabs aload pop counttomark 1 add array astore /Tabs exch def Tabs
0 currentpoint pop put} def
/Tbn {mark Tabs aload pop counttomark dup 2 add 1 roll cleartomark 1 sub} def
/Tb { 0 1 Tbn {Tabs exch get dup currentpoint pop lt
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/Tf { Tbn -1 0 {Tabs exch get dup currentpoint pop gt
{currentpoint exch pop moveto exit} {pop} ifelse } for } def
/qS { (aa) stW (a a) stW sub 4 div 0 Kn } def
/hS { qS qS } def
/pspc 0 def
/cf0 { scalefont setfont } bind def
/Kn { dup kY add /kY exch def rmoveto } bind def
/ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
0.33 mul neg Kn} def
/Ss { /fscale fscale 0.67 mul def currentfont 0.67 cf0 0 fscale0 fscale mul
0.67 mul Kn } def
/ns { 0 kY neg Kn /kY 0 def /fscale 1.0 def xfont0 1.0 cf0 } def
/CR { ns 0 /Bline Bline fscale0 neg add def Bline moveto } def
/cf { dup type /realtype ne {1.0} if exch findfont exch kY 0 eq
{ 40 mul dup /fscale0 exch def cf0 /xfont0 currentfont def}
{fscale0 mul fscale mul cf0} ifelse } def
/ctmk { counttomark dup 2 add -1 roll pop } bind def
/label { gsave translate 0 0 moveto dup scale neg /rotval exch def
/just exch def just 16 and 0 gt {gsave rotval rotate 0 1 dtransform
gsave pagemat setmatrix idtransform exch grestore 1 0 dtransform
gsave pagemat setmatrix idtransform exch grestore dup abs 1e-9 lt
{pop mul 0 gt} {3 1 roll pop pop 0 lt} ifelse grestore {-1 /rotval
rotval neg def /just just dup 3 and 1 ne {3 xor} if def} {1} ifelse
exch -1e-9 lt {-1 /rotval rotval neg def /just just dup 12 and
4 ne {12 xor} if def} {1} ifelse scale } if /showflag 0 def
/fspc pspc def /Bline 0 def /Tabs 0 array def /fscale 1.0 def
/kY 0 def gsave dup 1 add copy 0 exch 1 0 dtransform exch atan rotate
{exch dup type /stringtype eq {true charpath flattenpath} {exec}
ifelse } repeat pop pathbbox grestore 3 -1 roll pop 3 1 roll just
1 and 0 gt {just 2 and 0 gt {exch pop neg fspc sub} {exch sub 0.5
mul neg} ifelse} {pop neg fspc add} ifelse exch Bline exch just 4
and 0 gt {just 8 and 0 gt {exch pop neg fspc sub} {add 0.5 mul neg}
ifelse} {pop neg fspc add} ifelse rotval rotate Kn currentpoint
translate /showflag 1 def /Bline 0 def /Tabs 0 array def /fscale
1.0 def /kY 0 def {dup type /stringtype eq {show}{exec} ifelse}
repeat grestore } def
/pinlabel { 4 index 32 and 0 ne hlevel 0 eq or { /pspc 10 def label
/pspc 0 def } { pop pop pop pop pop {pop} repeat } ifelse } def
/pinglobal { pinlabel } def
/infolabel { pinlabel } def
/scb { setrgbcolor } bind def /sce { defColor aload pop scb } bind def
/cRedef {/defColor currentcolor 3 array astore def} def
/begingate { /hlevel hlevel 1 add def /defColor currentcolor sce 3 array
astore def gsave sce translate 0 0 moveto neg rotate dup abs scale
} bind def
/makeparm {3 string cvs dup length 1 add string /tstr exch def tstr exch
1 exch putinterval tstr 0 (v) putinterval tstr cvn} bind def
/beginparm { -1 1 {makeparm exch def} for
dup type /arraytype eq { aload length -1 1 {makeparm exch def}
for } if begingate } bind def
/endgate { /hlevel hlevel 1 sub def grestore defColor aload pop cRedef
scb} bind def
/hlevel 0 def
/tmpa [1 0 0 1 0 0] def
/gar {8 8 true tmpa {<c0 c0 00 00 0c 0c 00 00>} imagemask} bind
{8 8 true tmpa {<30 70 60 02 03 07 06 20>} imagemask} bind
{8 8 true tmpa {<0c 1e 1e 0c c0 e1 e1 c0>} imagemask} bind
{8 8 true tmpa {<0f 0f 0f 0f f0 f0 f0 f0>} imagemask} bind
{8 8 true tmpa {<3f f3 e1 e1 f3 3f 1e 1e>} imagemask} bind
{8 8 true tmpa {<df cf 8f 9f fd fc f8 f9>} imagemask} bind
{8 8 true tmpa {<ff 3f 3f ff ff f3 f3 ff>} imagemask} bind 7 array astore def
/ppaint { gsave clip tmpa dup setmatrix pathbbox neg exch neg 4 2 roll
neg 4 -1 roll 2 copy gt {exch} if 8 div ceiling 8 mul 4 2 roll neg 2 copy
gt {exch} if 8 div ceiling 8 mul 3 -1 roll -8 5 -1 roll
{ 3 index exch 5 exch put dup -8 3 index { 3 index
exch 4 exch put 3 index exec } for } for pop pop pop pop grestore } bind def
/setstyles {
currentlinewidth mul setlinewidth /style exch def
style 1 and 0 gt not {closepath} if
style 2 and 0 gt {currentlinewidth 4 mul dup 2 array astore 0 setdash} if
style 4 and 0 gt {0.5 currentlinewidth 4 mul 2 array astore 0 setdash} if
style dup 256 ge exch 480 lt and { gsave 1 setgray eofill grestore } if
style 16 and 0 gt { gsave style 224 and -5 bitshift dup 7 lt
{gar exch get ppaint} { pop eofill } ifelse grestore } if
style 8 and 0 gt style 512 eq or { newpath } { stroke } ifelse grestore } def
/polygon { gsave /num exch def moveto num 1 sub {lineto} repeat setstyles } def
/xcarc { gsave newpath arc setstyles } def
/elb { matrix currentmatrix 7 -1 roll 7 -1 roll translate 5 1 roll 4 -1 roll
3 index div 1 scale } def
/ele { 0 4 1 roll 0 4 1 roll } bind def
/ellipse { gsave elb newpath ele arc setmatrix setstyles } def
/pellip { elb ele arc setmatrix } def
/nellip { elb ele arcn setmatrix } def
/spline { gsave moveto curveto setstyles } def
/polyc { {lineto} repeat } bind def
/beginpath { gsave moveto } bind def
/endpath { setstyles } bind def
/bop { 1 setlinecap 0 setlinejoin 6 setmiterlimit 0 0 0 scb cRedef } def
/psinsertion {/PSobj save def /showpage {} def bop rotate translate dup scale} def
/end_insert {PSobj restore} def
/setpagemat {/pagemat matrix currentmatrix def} def
/inchscale {setpagemat 0.375 mul dup scale} def
/cmscale {setpagemat 0.35433071 mul dup scale} def
%%EndResource
%%EndProlog
% XCircuit output starts here.
%%Page: smile.eps 1
%%PageOrientation: Portrait
/pgsave save def bop
% 320 304 offsets
1.0000 inchscale
2.6000 setlinewidth
1 1.00 272 368 16 0.00 360.00 xcarc
1 1.00 368 368 16 0.00 360.00 xcarc
1 1.00 320 336 304 304 336 304 320 336 4 polygon
1 1.00 288 304 352 304 400 240 240 240 spline
1 1.00 320 320 128 0.00 360.00 xcarc
pgsave restore showpage
%%Trailer
XCIRCsave restore
%%EOF