source: trunk/third/transcript/lib/pscat.pro @ 9090

Revision 9090, 4.9 KB checked in by ghudson, 28 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r9089, which included commits to RCS files with non-trunk default branches.
Line 
1% Start of pscat.pro -- prolog for troff translator
2% Copyright (c) 1985,1987 Adobe Systems Incorporated. All Rights Reserved.
3% GOVERNMENT END USERS: See Notice file in TranScript library directory
4% -- probably /usr/lib/ps/Notice
5% RCS: $Header: /afs/dev.mit.edu/source/repository/third/transcript/lib/pscat.pro,v 1.1.1.1 1996-10-07 20:25:31 ghudson Exp $
6save /pscatsave exch def
7/$pscat 50 dict def
8$pscat begin
9/fm [1 0 0 1 0 0] def
10/xo 0 def /yo 0 def
11/M /moveto load def
12/R /show load def
13/S {exch currentpoint exch pop moveto show}def
14/T {exch currentpoint pop exch moveto show}def
15/U {3 1 roll moveto show}def
16/siz 0 def
17/font 0 def
18/Z {/siz exch def SF}def
19/F {/font exch def SF}def
20/SF{font 0 ne
21    {catfonts font 1 sub get fm 0 siz put fm 3 siz neg put
22     fm makefont setfont}if}def
23/BP{save/catsv exch def 0 exch translate 72 432 div dup neg scale
24  xo yo translate 0 0 moveto}def
25/EP{catsv restore showpage}def
26
27% definitions for PPROC callback functions
28% each PPROC is called with the following number on the stack:
29% pointsize charcode railmag pswidth pschar x y wid
30/$pprocs 50 dict def
31/fractm [.65 0 0 .6 0 0] def
32% fractions
33/PS1{gsave $pprocs begin
34    /wid exch def pop pop pop pop pop /ch exch def /size exch def
35    /pair $pprocs ch get def /cf currentfont def
36    cf fractm makefont setfont
37    0 .3 size mul 6 mul 2 copy neg rmoveto pair 0 get show rmoveto
38    currentfont cf setfont (\244) show setfont
39    pair 1 get show grestore wid .06 div 0 rmoveto end}def
40$pprocs begin
418#34 [(1)(4)] def
428#36 [(1)(2)] def
438#46 [(3)(4)] def
44end
45%%BeginResource: font DIThacks
46% DIThacks fonts for some special chars
4750 dict dup begin
48/FontType 3 def
49/FontName /DIThacks def
50/FontMatrix [.001 0.0 0.0 .001 0.0 0.0] def
51/FontBBox [-220 -280 900 900] def% a lie but ...
52/Encoding 256 array def
530 1 255{Encoding exch /.notdef put}for
54Encoding
55 dup 8#040/space put %space
56 dup 8#110/rc put %right ceil
57 dup 8#111/lt put %left  top curl
58 dup 8#112/bv put %bold vert
59 dup 8#113/lk put %left  mid curl
60 dup 8#114/lb put %left  bot curl
61 dup 8#115/rt put %right top curl
62 dup 8#116/rk put %right mid curl
63 dup 8#117/rb put %right bot curl
64 dup 8#120/rf put %right floor
65 dup 8#121/lf put %left  floor
66 dup 8#122/lc put %left  ceil
67 dup 8#140/sq put %square
68 dup 8#141/bx put %box
69 dup 8#142/ci put %circle
70 dup 8#143/br put %box rule
71 dup 8#144/rn put %root extender
72 dup 8#145/vr put %vertical rule
73 dup 8#146/ob put %outline bullet
74 dup 8#147/bu put %bullet
75 dup 8#150/ru put %rule
76 dup 8#151/ul put %underline
77 pop
78/DITfd 100 dict def
79/BuildChar{0 begin
80 /cc exch def /fd exch def
81 /charname fd /Encoding get cc get def
82 /charwid fd /Metrics get charname get def
83 /charproc fd /CharProcs get charname get def
84 charwid 0 fd /FontBBox get aload pop setcachedevice
85 40 setlinewidth
86 newpath 0 0 moveto gsave charproc grestore
87 end}def
88/BuildChar load 0 DITfd put
89%/UniqueID 5 def
90/CharProcs 50 dict def
91CharProcs begin
92/space{}def
93/.notdef{}def
94/ru{500 0 rls}def
95/rn{0 750 moveto 500 0 rls}def
96/vr{20 800 moveto 0 -770 rls}def
97/bv{20 800 moveto 0 -1000 rls}def
98/br{20 770 moveto 0 -1040 rls}def
99/ul{0 -250 moveto 500 0 rls}def
100/ob{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath stroke}def
101/bu{200 250 rmoveto currentpoint newpath 200 0 360 arc closepath fill}def
102/sq{80 0 rmoveto currentpoint dround newpath moveto
103    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath stroke}def
104/bx{80 0 rmoveto currentpoint dround newpath moveto
105    640 0 rlineto 0 640 rlineto -640 0 rlineto closepath fill}def
106/ci{355 333 rmoveto currentpoint newpath 333 0 360 arc
107    50 setlinewidth stroke}def
108
109/lt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 add exch s4 a4p stroke}def
110/lb{20 800 moveto 0 -550 rlineto currx -200 2cx s4 add exch s4 a4p stroke}def
111/rt{20 -200 moveto 0 550 rlineto currx 800 2cx s4 sub exch s4 a4p stroke}def
112/rb{20 800 moveto 0 -500 rlineto currx -200 2cx s4 sub exch s4 a4p stroke}def
113/lk{20 800 moveto 20 300 -280 300 s4 arcto pop pop 1000 sub
114    currentpoint stroke moveto
115    20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def
116/rk{20 800 moveto 20 300 320 300 s4 arcto pop pop 1000 sub
117    currentpoint stroke moveto
118    20 300 4 2 roll s4 a4p 20 -200 lineto stroke}def
119/lf{20 800 moveto 0 -1000 rlineto s4 0 rls}def
120/rf{20 800 moveto 0 -1000 rlineto s4 neg 0 rls}def
121/lc{20 -200 moveto 0 1000 rlineto s4 0 rls}def
122/rc{20 -200 moveto 0 1000 rlineto s4 neg 0 rls}def
123end
124
125/Metrics 50 dict def Metrics begin
126/.notdef 0 def
127/space 500 def
128/ru 500 def
129/br 0 def
130/lt 250 def
131/lb 250 def
132/rt 250 def
133/rb 250 def
134/lk 250 def
135/rk 250 def
136/rc 250 def
137/lc 250 def
138/rf 250 def
139/lf 250 def
140/bv 250 def
141/ob 350 def
142/bu 350 def
143/ci 750 def
144/bx 750 def
145/sq 750 def
146/rn 500 def
147/ul 500 def
148/vr 0 def
149end
150
151DITfd begin
152/s2 500 def /s4 250 def /s3 333 def
153/a4p{arcto pop pop pop pop}def
154/2cx{2 copy exch}def
155/rls{rlineto stroke}def
156/currx{currentpoint pop}def
157/dround{transform round exch round exch itransform} def
158end
159end
160/DIThacks exch definefont pop
161%%EndResource
Note: See TracBrowser for help on using the repository browser.