home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Dream 45
/
Amiga_Dream_45.iso
/
Atari
/
Magazine
/
Dossier
/
texutils
/
texshell-3.74.zoo
/
doc
/
ts_man.mf
< prev
next >
Wrap
Text File
|
1989-07-01
|
6KB
|
213 lines
font_size 11pt#;
mode_setup;
font_identifier "TS-MANUAL";
beginchar("1",5.5pt#,7.5pt#,0); "Alternate";
pickup pencircle scaled .85pt;
x1=0.05w; y1=0;
x2=x1; y2=h;
x3=0.95w; y3=y2;
x4=x3; y4=y1;
fill z1--z2--z3--z4--cycle;
x5=x1; y5=.5h;
x6=.5w; y6=h;
x7=x3; y7=y5;
x8=x6; y8=0;
undraw z5--z6--z7--z8--cycle;
penlabels(1,2,3,4,5,6,7,8);
endchar;
%------------------------------------------------------------------------
% Die ganze Palette an METAFONT-Logos
def beginlogochar(expr code, unit_width) =
beginchar(code,unit_width*u#+2s#,ht#,0);
pickup logo_pen enddef;
def super_half(suffix i,j,k) =
draw z.i{0,y.j-y.i}
... (.8[x.j,x.i],.8[y.i,y.j]){z.j-z.i}
... z.j{x.k-x.i,0}
... (.8[x.j,x.k],.8[y.k,y.j]){z.k-z.j}
... z.k{0,y.k-y.j} enddef;
slant:=0;
def logoset(expr i) =
ygap#:=(ht#/13.5u#)*xgap#; % vertical adjustment
ho#:=o#; % horizontal overshoot
leftstemloc#:=2.5u#+s#; % position of left stem
barheight#:=.45ht#; % height of bar lines
py#:=.9px#; % vertical pen thickness
define_pixels(s,u);
define_whole_pixels(xgap);
define_whole_vertical_pixels(ygap);
define_blacker_pixels(px,py);
pickup pencircle xscaled px yscaled py;
logo_pen:=savepen;
define_good_x_pixels(leftstemloc);
define_good_y_pixels(barheight);
define_corrected_pixels(o);
define_horizontal_corrected_pixels(ho);
beginlogochar(i,18); % "M"
x1=x2=leftstemloc; x4=x5=w-x1; x3=w-x3;
y1=y5; y2=y4; bot y1=-o;
top y2=h+o; y3=y1+ygap;
draw z1--z2--z3--z4--z5;
labels(1,2,3,4,5); endchar;
beginlogochar(i+1,14); % "E"
x1=x2=x3=leftstemloc;
x4=x6=w-x1+ho; x5=x4-xgap;
y1=y6; y2=y5; y3=y4;
bot y1=0; top y3=h; y2=barheight;
draw z6--z1--z3--z4; draw z2--z5;
labels(1,2,3,4,5,6); endchar;
beginlogochar(i+2,13); % "T"
italcorr ht#*slant + .5u#;
if .5w<>good.x .5w: change_width; fi
lft x1=-eps; x2=w-x1; x3=x4=.5w;
y1=y2=y3; top y1=h; bot y4=-o;
draw z1--z2; draw z3--z4;
labels(1,2,3,4); endchar;
beginlogochar(i+3,15); % "A"
x1=.5w; x2=x4=leftstemloc; x3=x5=w-x2;
top y1=h+o; y2=y3=barheight;
bot y4=bot y5=-o;
draw z4--z2--z3--z5; super_half(2,1,3);
labels(1,2,3,4,5); endchar;
beginlogochar(i+4,14); % "F"
x1=x2=x3=leftstemloc;
x4=w-x1+ho; x5=x4-xgap;
y2=y5; y3=y4; bot y1=-o;
top y3=h; y2=barheight;
draw z1--z3--z4; draw z2--z5;
labels(1,2,3,4,5); endchar;
beginlogochar(i+5,15); % "O"
x1=x4=.5w; top y1=h+o; bot y4=-o;
x2=w-x3=good.x(1.5u+s); y2=y3=barheight;
super_half(2,1,3); super_half(2,4,3);
labels(1,2,3,4); endchar;
beginlogochar(i+6,15); % "N"
x1=x2=leftstemloc; x3=x4=x5=w-x1;
bot y1=bot y4=-o;
top y2=top y5=h+o; y3=y4+ygap;
draw z1--z2--z3; draw z4--z5;
labels(1,2,3,4,5); endchar;
ligtable i+2: i+3 kern -.5u#; % "T": "A"
ligtable i+4: i+5 kern -u#; % "F": "O"
enddef;
% logo10 scaled 1100
ht#:=6.6pt#; % height of characters
xgap#:=0.66pt#; % horizontal adjustment
u#:=4.4/9pt#; % unit width
s#:=0; % extra space at the left and the right
o#:=1.1/9pt#; % overshoot
px#:=2.2/3pt#; % horizontal thickness of pen
logoset(65) % now generate the font ("A".."G")
% logo12
ht#:=1.2*6pt#;
xgap#:=1.2*0.6pt#;
u#:=1.18436*4/9pt#;
s#:=0;
o#:=1/8.5pt#;
px#:=1.2*2/3pt#;
logoset(72); % now generate the font ("H".."N")
% logobf10 scaled \magstephalf
ht#:=1.1*6pt#;
xgap#:=1.1*23/20*0.6pt#;
u#:=1.1*23/20*4/9pt#;
s#:=1.1*.1pt#;
o#:=1.1/9pt#;
px#:=1.1*44/36pt#;
logoset(79); % now generate the font ("O".."U")
% logobf10 scaled \magstep1
ht#:=1.2*6pt#;
xgap#:=1.2*23/20*0.6pt#;
u#:=1.2*23/20*4/9pt#;
s#:=1.2*.1pt#;
o#:=1.2/9pt#;
px#:=1.2*44/36pt#;
logoset(97); % now generate the font ("a".."g")
% logobf10 scaled \magstep2
ht#:=1.44*6pt#;
xgap#:=1.44*23/20*0.6pt#;
u#:=1.44*23/20*4/9pt#;
s#:=1.44*.1pt#;
o#:=1.44/9pt#;
px#:=1.44*44/36pt#;
logoset(104); % now generate the font ("h".."n")
%------------------------------------------------------------------------
% Und nun noch das "dangerous bend" Symbol (thanx to Knuth)
def font_setup=
define_pixels(u,tiny,axis,hheight,border);
define_blacker_pixels(hair,thin,thick,rulethickness);
pickup if tiny<.5: nullpen else: pencircle scaled tiny fi;
tinypen:=savepen;
currenttransform:=identity yscaled aspect_ratio slanted slant;
enddef;
% typical cmr11 parameters
u#:=22/36pt#;
tiny#:=0;
axis#:=99/36pt#;
hheight#:=275/36pt#;
border#:=22/36pt#;
hair#:=8.8/36pt#;
thin#:=9.9/36pt#;
thick#:=27.5/36pt#;
fixwidth:=0;
slant:=0;
rulethickness#:=.6pt#;
baselinedistance#:=12pt#;
heavyline#:=55/36pt#;
font_setup;
define_whole_pixels(baselinedistance);
define_blacker_pixels(heavyline);
beginchar(127,25u#,hheight#+border#,0); "Dangerous bend sign";
pickup pencircle scaled rulethickness;
top y1=25/27h; lft x4=0;
x1+x1=x1a+x1b=x4b+x2a=x4+x2=x4a+x2b=x3b+x3a=x3+x3=w;
x4a=x4b=x4+u; x3b=x1a=x1-2u;
y4+y4=y4a+y4b=y3b+y1a=y3+y1=y3a+y1b=y2b+y2a=y2+y2=0;
y1a=y1b=y1-2/27h; y4b=y2a=y4+4/27h;
draw z1a..z1..z1b---z2a..z2..z2b---
z3a..z3..z3b---z4a..z4..z4b---cycle; % signboard
x10=x11=x12=x13=good.x(.5w-u); x14=x15=x16=x17=w-x10;
y10=y14=28/27h+epsilon; bot y13=-baselinedistance;
z11=(z10..z13) intersectionpoint (z1a{z1a-z4b}..z1{right});
y15=y11; y16=y12=-y11; y17=y20=y21=y13;
draw z11--z10--z14--z15; draw z12--z13; draw z16--z17; % signpost
x20=w-x21; x21-x20=16u; draw z20--z21; % ground level
x38=w-x31; x38-x31=8u; x32=x34=x38; x31=x35=x37;
y31=-y38=12/27h; y32=-y37=9/27h; y34=-y35=3/27h;
pickup pencircle scaled heavyline;
draw z32{z32-z31}..z34---z35..z37{z38-z37}; % the dangerous bend
pickup penrazor xscaled heavyline rotated (angle(z32-z31)+90);
draw z31--z32; draw z37--z38; % upper and lower bars
labels(1,1a,1b,2,2a,2b,3,3a,3b,4,4a,4b,10,11,12,13,14,15,16,17,20,21,
31,32,33,34,35,36,37,38);
endchar;
end.