home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 4
/
FreshFish_May-June1994.bin
/
useful
/
dist
/
text
/
tex
/
pastex
/
mf
/
inputs
/
calu.mf
< prev
next >
Wrap
Text File
|
1992-03-17
|
16KB
|
395 lines
% Calligraphic capitals with `fixed' pens, by N. N. Billawala (1985).
% These letters are intended for math, hence |math_fitting| is assumed.
% Character codes \0101 through \0132 are generated.
cmchar "Calligraphic A";
beginchar("A",14.4u#,cap_height#,0);
italcorr .5u#;
adjust_fit(-.05w#,0); pickup cal.nib;
lft x5=.54w; x7=.9w;
top y5=h+.4cap_curve; bot y7=bot_flourish_line;
z6=.3[z7,z5]-bend;
pickup tilted.nib;
lft x1=.05w; x2=.2w; rt x4=x5;
y1=y2+.1h; bot y2=bot_flourish_line; top y4=h+.4cap_curve;
y3=y6; z3=whatever[z2,z4]+2bend;
draw\\(z1..tension 1.2..{right}z2) softjoin flex(z2,z3,z4); % left diagonal
pickup cal.nib;
erase fill\\(0,bot y5)--(w,bot y5)--(w,top y5)--(0,top y5)--cycle;
draw flex(z5,z6,z7) softjoin (z7--z7+cal.extension); % right diagonal
draw rt z3--z6; % bar
math_fit(.5u#-.1cap_height#*slant,ic#); labels(1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic B";
beginchar("B",9.9u#,cap_height#,0);
italcorr max(.8h#*slant-.1w#,.3h#*slant)+.5u#;
adjust_fit(0,0); pickup cal.nib;
lft x1=lft x3=0; x4=.6[x2,x5]; rt x5=.9w; x6=.4w; rt x7=w;
x8=.4[x9,x7]; lft x9=rt x3;
top y1=h+o; bot y3=-o; z2=.3[z3,z1]+bend;
y4=y1; y5=.6[y6,y4]; y6=.55h; y7=.45[y8,y6]; bot y8=-o; y9=.1h;
draw z1-cal.extension--flex(z1,z2,z3); % stem
draw z2{up}...z4...z5{down}...{dir 200}z6{dir 10}
...z7{down}...z8{left}...z9; % lobes
math_fit(.5u#,.3h#*slant+.5u#); labels(1,2,3,4,5,6,7,8,9); endchar;
cmchar "Calligraphic C";
beginchar("C",9.4u#,cap_height#,0);
italcorr max(h#*slant-.15w#,.2h#*slant)+.5u#;
adjust_fit(0,0); pickup cal.nib;
x0=.7[x2,x1]; rt x1=.85w; x2=.6w; lft x3=0; x4=.5w; rt x5=w;
y0=.7h; y1=.8[y0,y2]; top y2=h+o; y3=.5h; bot y4=-o; y5=.2h;
draw\\(z0{2(x1-x0),y1-y0}...z1)
softjoin (z1...z2{left}....z3{down}...z4...z5); % stroke
math_fit(.5u#-.5h#*slant,.2h#*slant+.5u#); labels(0,1,2,3,4,5); endchar;
cmchar "Calligraphic D";
beginchar("D",10u#,cap_height#,0);
italcorr .6h#*slant+.5u#;
adjust_fit(4u#,0); pickup cal.nib;
lft x1=lft x3=0; x4=.2[x1,x5]; rt x5=w; x6=.2w; x7=0;
top y1=top y4=h; bot y3=0; z2=.5[z3,z1]+bend;
y5=.51[y6,y4]; bot y6=bot y7=0;
draw flex(z1,z2,z3); % stem
draw z1---z4....z5{down}...z6---z7; % lobe
draw z1{left}...{down}z1-flourish_change; % swash
math_fit(.5u#-.8h#*slant,ic#-.5u#); labels(1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic E";
beginchar("E",8.5u#,cap_height#,0);
italcorr max(h#*slant-.1w#,.2h#*slant)+.5u#;
adjust_fit(0,0); pickup cal.nib;
x1=.9[x3,x2]; rt x2=.9w; x3=.6[x4,x2]; lft x4=.05w;
x5=.7[x6,x2]; lft x6=0; x7=.5[x6,x8]; rt x8=w;
y1=y2-.1h; y2=.9h+o; top y3=h+o; y4=.5[y5,y3];
y5=.55h; y6=.6[y5,y7]; bot y7=-o; y8=.2h;
draw\\(z1{2(x2-x1),y2-y1}...z2)
softjoin (z2...z3{left}...z4{down}...{right}z5); % upper arc
draw z5{left}...z6{down}...z7{right}...z8; % lower arc
math_fit(.5u#-.2h#*slant,.2h#*slant+.5u#);
labels(1,2,3,4,5,6,7,8); endchar;
cmchar "Calligraphic F";
beginchar("F",13.5u#,cap_height#,0);
italcorr h#*slant+.5u#;
adjust_fit(-.1w#,-u#); pickup cal.nib;
x1=.5w; x3=.4w; lft x4=.1w; x5=x2+.35w; x6=.7[x1,x7]; rt x7=w;
top y1=top y6=h; z2=.5[z3,z1]+1.2bend;
bot y3=-o; y4=.1h; y5=y2; y7=.9h;
draw flex(z1,z2,z3) softjoin (z3...{x4-x3,5(y4-y3)}z4); % stem
draw z1-flourish_change{up}...(z1-(u,0))---z6...{down}z7; % upper bar
draw z2--z5--z5-(0,.1cap_curve); % middle bar
math_fit(0,.5ic#); labels(1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic G";
beginchar("G",9.4u#,cap_height#,.5desc_depth#);
italcorr max(h#*slant-.05w#,.5h#*slant)+.5u#;
adjust_fit(0,0); pickup cal.nib;
x0=.7[x2,x1]; rt x1=.95w; x2=.6w; lft x3=0; x4=.5w;
rt x5=w; x6=.5[x7,x5]; lft x7=.2w;
y0=.7h+o; y1=.8[y0,y2]; top y2=h+o; y3=.5[y4,y2]; bot y4=.1h;
y5=.5h; bot y6=-d-o; y7=-.5d;
draw\\(z0{2(x1-x0),y1-y0}...z1)
softjoin (z1...z2{left}....z3{down}...z4...{up}z5); % arc
draw z5{down}...z6{left}...z7; % tail
math_fit(.5u#-.4h#*slant,.5h#*slant+.5u#);
labels(0,1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic H";
beginchar("H",12.2u#,cap_height#,0);
italcorr max(h#*slant-.2w#,.15h#*slant)+.5u#;
adjust_fit(4u#,0); pickup cal.nib;
lft x1=lft x3=.5u; rt x4=rt x6=.8w-.6u; rt x9=w;
top y1=top y4=h; bot y3=-.06h; bot y6=bot_flourish_line; y9=y6+.1h;
z2=.6[z3,z1]+bend; z5=.4[z6,z4]-bend;
path p[]; p1=flex(z1,z2,z3); p2=flex(z4,z5,z6);
p3=(-w,.45h)--(2w,.45h);
rt z7+2bend=p3 intersectionpoint p1; rt z8=p3 intersectionpoint p2;
draw (z1-flourish_change-bend{curl2}....z1-(u,0)---z1) softjoin p1; % left stem
draw p2 softjoin (z6{right}...{up}z9); % right stem
draw z7--z8; % bar
math_fit(.5u#-.8h#*slant,.15h#*slant+.5u#);
labels(1,2,3,4,5,6,7,8,9); endchar;
cmchar "Calligraphic I";
beginchar("I",10.8u#,cap_height#,0);
italcorr max(h#*slant+.5cap_curve#-.2w#,.15h#*slant)+.5u#;
adjust_fit(0,0); pickup cal.nib;
lft x0=0; x1=.9w; x2=x4=.5w; x5=.2w; x6=.8w; rt x7=1.05w;
y0=.8h; top y1=top y2=h; z3=.5[z4,z2]+bend;
bot y4=bot y5=bot y6=0; y7=.15h;
draw z0{up}...z2---z1; % upper bar
z8=.5[z2,z1];
draw z8{left}...z3{down}...{left}.5[z4,z5]; % stem
draw z5---z6...{up}z7; % lower bar
math_fit(.5u#-.8h#*slant,.15h#*slant+.5u#);
labels(0,1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic J";
beginchar("J",11.7u#,cap_height#,.5desc_depth#);
italcorr h#*slant+.25u#;
adjust_fit(0,0); pickup cal.nib;
x0=.6w; rt x1=w; rt x2=.75w; x3=.5[x4,x2]; lft x4=0;
top y0=top y1=h; y2=.2h; bot y3=-d-o; y4=d;
draw z1---z0...{down}z0-(4u,2/7h); % upper bar
draw z1{left}...z2{down}...z3{left}...{up}z4; % stem and tail
math_fit(.5u#,0); labels(0,1,2,3,4); endchar;
cmchar "Calligraphic K";
beginchar("K",11u#,cap_height#,0);
italcorr max(h#*slant-.2w#,.2h#*slant)+.5u#;
adjust_fit(0,.1w#); pickup cal.nib;
lft x1=lft x3=0; top y1=h+o; bot y3=-o; z2=.6[z3,z1]+bend;
draw z1-cal.extension--flex(z1,z2,z3); % stem
pickup light_cal.nib;
rt x4=.9w; x5=x4-.1w; x7=.8w; rt x8=1.1w;
y4=.9h; top y5=h+o; bot y7=-o; y8=.2h-o;
(lft z6)t_=z2.t_+penoffset up of pen_[cal.nib];
draw z4{up}...{left}z5..tension atleast 2..{down}z6
..tension atleast 3 and atleast 2..z7{right}...{up}z8; % diagonals
math_fit(.5u#,.2h#*slant+.5u#); labels(1,2,3,4,5,6,7,8); endchar;
cmchar "Calligraphic L";
beginchar("L",10.8u#,cap_height#,0);
italcorr .2h#*slant+.5u#;
adjust_fit(0,0); pickup heavy_cal.nib;
x1=.2w; x2=x1+.3w; rt x3=x2+.25w; lft x4=0;
x5=.8[x4,x6]; rt x6=w; x7=.2[x4,x5];
y1=.4h-o; top y2=h+o; y3=.8h; bot y4=bot y5=-o;
y6=.2h-o; y7=9/70h-o;
path p; p=z4...z7{right}..{right}z5...{up}z6; draw p; % arm
draw z4{dir .75angle(direction 0 of p)}
...z1{up}...z2{right}...{down}z3; % stem and flourish
math_fit(.5u#,ic#); labels(1,2,3,4,5,6,7); endchar;
cmchar "Calligraphic M";
beginchar("M",19.8u#,cap_height#,0);
italcorr max(h#*slant-u#,.75cap_curve#)+.5cap_curve#+.5u#;
adjust_fit(-.1w#,0); pickup med_cal.nib;
(z20)t_=(z5)t_+penoffset down of currentpen
=(z4)t_+penoffset down of pen_[tilted.nib];
z6=.3[z7,z5]-bend; z9=.3[z8,z10]+.5bend; z12=.3[z13,z11]-bend;
x7=.5[x2,x13]; bot y7=.05h; top y5=h+o;
(z0)t_=(z7)t_+penoffset right of currentpen
=(z8)t_+penoffset right of pen_[tilted.nib];
pickup cal.nib;
(z30)t_=(z11)t_+penoffset up of currentpen
=(z10)t_+penoffset up of pen_[tilted.nib];
x13=w; bot y13=bot_flourish_line;
pickup tilted.nib;
lft x1=.1w; x2=.2w; x4=.2[x2,x7]; x10=.8[x7,x13];
y1=.05h+y2; bot y2=bot_flourish_line; top y10=h+o;
z3=whatever[z2,z4]+2bend; y3=y6;
draw\\(z1..tension1.2..{right}z2) softjoin flex(z2,z3,z4); % left stem
erase fill z20--(.5w,y20)--(.5w,top y4)--(x20-4u,top y4)--cycle;
pickup med_cal.nib;
draw flex(z5,z6,z7); % left diagonal
pickup cal.nib;
draw flex(z11,z12,z13) softjoin (z13--z13+cal.extension); % right stem
pickup tilted.nib;
path p; p=flex(z8,z9,z10);
erase fill z0--(x0,y0-.5h)--(x9,y0-.5h)--subpath(1,0) of p--cycle;
erase fill z30--(x30,y30+.5h)--(x9,y30+.5h)--subpath(1,2) of p--cycle;
draw p; % right diagonal
math_fit(.5u#-.05h#*slant,ic#);
labels(0,1,2,3,4,5,6,7,8,9,10,11,12,13,20,30); endchar;
cmchar "Calligraphic N";
beginchar("N",9u#,cap_height#,0);
italcorr h#*slant+.5u#;
adjust_fit(2u#,2.5u#); pickup med_cal.nib;
(z0)t_=(z5)t_+penoffset down of currentpen
=(z4)t_+penoffset down of pen_[tilted.nib];
(z20)t_=(z7)t_+penoffset up of currentpen
=(z8)t_+penoffset up of pen_[tilted.nib];
z6=.3[z7,z5]-bend; rt z7=(w,0); top y5=h+o;
pickup tilted.ni