summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf')
-rw-r--r--Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf787
1 files changed, 787 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf b/Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf
new file mode 100644
index 00000000000..a4b10704d0c
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/bookhands/rtndl.mf
@@ -0,0 +1,787 @@
+%%
+%% This is file `rtndl.mf',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% rotunda.dtx (with options: `min')
+%%
+%% Copyright 1999 Peter R. Wilson
+%%
+%% This program is provided under the terms of the
+%% LaTeX Project Public License distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt.
+%%
+%% Author: Peter Wilson (CUA)
+%% now at: peter.r.wilson@boeing.com
+%%
+
+cmchar "RTND letter a";
+beginchar("a", 2sb#+hstretch*(9/16x_height#+jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+path pth[];
+pair pr[];
+pickup quill;
+n1 := w - 2pcshiftx -jut; % effective letter width
+x1=1/2w; top y1=h;
+rt x2 = w-pcshiftx-jut; top y2 = bot y1;
+x3 = x2; bot y3 = 0;
+z4 = z3 shifted (jut*pdir);
+pth1 := z1--z2--z3--z4;
+rt x6 = lft x3; bot y6 = 0;
+lft x5 = pcshiftx; bot y5 = 1/4h;
+
+z15 = (lft x5, bot y5); z25 = (rt x5, top y5);
+z7 = whatever[z15,z25] = whatever[z2,z3];
+x8 = x25; y8 = y25 + 1/2(y1-y7);
+
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+else:
+ % draw stem
+ draw pth1;
+ % draw bowl
+ draw z5--z6;
+ pickup stylus;
+ draw z5--z7;
+ draw z1{-pdir}..z8..z7{pdir};
+fi
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,11,12,13,14,15,100);
+endchar; % end "a"
+
+cmchar "RTND letter b";
+beginchar("b", 2sb#+hstretch*(11/16x_height#+jut#),
+ asc_height#, 0);
+adjust_fit(0,0);
+numeric n[];
+path pth[];
+pcshiftx := sb;
+pickup quill;
+n1:=w-2pcshiftx; % actual letter width
+n2:=h/ascratio; % top of bowl
+%%ductus:=true;
+lft x1 = pcshiftx+jut; top y1=h;
+x3 = x1; bot y3= thick;
+rt x5 = w-pcshiftx; y5=1/2n2;
+x4 = 1/2[x3,x5]; bot y4=0;
+x6=1/2[x4,x5]; top y6=n2;
+pth1 := z1..z3{down}..z4{right}.. z5{up};
+z98=(0,3/4n2); z99=(w,y98);
+pth2 := z98--z99;
+z7=(x1,6/8n2);
+if ductus:
+ pickup stylus;
+fi
+draw z1--z3--z4;
+draw z4{pdir}..z5{up}..{-pdir}z7;
+draw_flat_head(1);
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,100);
+endchar; % end "b"
+
+cmchar "RTND letter c";
+beginchar("c", 2sb#+hstretch*(9/16x_height#),
+ x_height#, 0);
+adjust_fit(0,0);
+numeric n[];
+pcshiftx := sb;
+pickup quill;
+n1:=w-2pcshiftx; % actual letter width
+n2:=6/5w-2pcshiftx; % width of full bowl
+x1=pcshiftx + 1/2n1; top y1 = h;
+lft x2 = pcshiftx; y2 = 1/2h;
+x3 = x1; bot y3 = 0;
+rt x4 = w-pcshiftx; y4 = 1/4h;
+x24 = x4; y24 = 3/4h;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z24--z1{left}...z2{down}..z3{right}..z4{pdir};
+ductus:=false;
+penlabels(1,2,3,4,5,6,14,16,17,18,100);
+endchar; % end "c"
+
+cmchar "RTND letter d";
+beginchar("d", 2sb#+hstretch*(11/16x_height#+jut#),
+ asc_height#, 0);
+adjust_fit(0,0);
+numeric n[];
+path pth[];
+pcshiftx := sb;
+pickup quill;
+n1 = h/ascratio; % x-height
+rt x1=w-pcshiftx-jut; top y1=h;
+x2 = x1; bot y2=0;
+x3 = x1; y3 = 1/4n1;
+lft x5 = pcshiftx; y5=6/8n1;
+x4 = 3/8[x3,x5]; bot y4 = 0;
+x6=1/2[x4,x5]; top y6 = n1;
+x7=x3; top y7=n1;
+rt x8 = w-pcshiftx; y8=n1;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2;
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+%%draw z3..z4{left}..z5{up}..z6;
+draw z3..z4{left}.. tension 0.8 ..z5{up}..z6;
+draw z6..z7..z8;
+ductus:=false;
+penlabels(0,1,2,3,4,5,6,7,8,100);
+endchar; % end "d"
+
+cmchar "RTND letter e";
+beginchar("e", sb#+hstretch*(15/16x_height#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+path pth[];
+pickup quill;
+n1 := w-pcshiftx; % actual letter width
+n2 := 6/8n1; % width of bowl
+x1 = pcshiftx + 5/8n2; top y1=h;
+lft x2 = pcshiftx; y2 = 1/2h;
+x3 = pcshiftx + 1/2n2; bot y3 = 0;
+rt x4 = pcshiftx + n2; y4 = 1/4h;
+%%z98=(0,3/8h); z99=(w,y98);
+z98=(0,2/8h); z99=(w,y98);
+pth1 := z98--z99;
+pth2 := z1{left}..z2{down}..z3{right};
+z7 = pth1 intersectionpoint pth2;
+rt x9 = w-pcshiftx; y9 = 3/4h;
+z8=1/2[z7,z9];
+
+z70 = z7 shifted 10pdir;
+z17 = whatever[z7,z70];
+%%x17 = w-pcshiftx;
+top y17 = h;
+
+rt x27=w-pcshiftx; top y27=h;
+pth3 := z7--z27; % diagonal
+pth4 := z1--z9;
+
+z34 = pth3 intersectionpoint pth4;
+pth5 := z34--z1{left}...z2{down}..z3{right}..z4{pdir}; % bowl
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+%%draw z7{pdir}..z1{left}..z2{down}..z3{right}..z4{pdir};
+%%draw z7{pdir}..z8{right}..z9{pdir};
+%%draw z7--z17;
+draw pth5; % bowl
+%%draw pth3; % diagonal
+draw z34--z7; % daigonal
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,17,27,34,70,100);
+endchar; % end "e"
+
+cmchar "RTND letter f";
+beginchar("f", 2sb#+hstretch*(9/16x_height#+jut#),
+ (asc_height#), 0);
+adjust_fit(0,0);
+numeric n[];
+pcshiftx := sb;
+pickup quill;
+n1 := h/ascratio; % x-height
+%% stem
+lft x1 = lft x2 = pcshiftx+jut; bot y2=0;
+%% flick
+rt x4 = w-pcshiftx; top y4 = h-thick;
+top y3 = h;
+lft x3 = rt x1;
+top y1 = bot y3;
+%% bar
+lft x5 = pcshiftx; top y5 = n1;
+rt x6 = lft x4; y6 = y5;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2; draw_flat_foot(2); % stem
+draw z3--z4; % top
+draw z5--z6; % bar
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,14,15,16,100);
+endchar; % end "f"
+
+cmchar "RTND letter g";
+beginchar("g", 2sb#+hstretch*(11/16x_height#+jut#),
+ x_height#, desc_depth#);
+adjust_fit(0,0);
+numeric n[];
+path pth[];
+pcshiftx := sb;
+pickup quill;
+%%n1 = h/ascratio; % x-height
+rt x1=w-pcshiftx-jut; top y1=h;
+rt x2 = x1; y2=1/2h;
+x3 = x1; y3 = 0;
+rt x4 = w-pcshiftx; y4 = -1/2d;
+x5 = 1/2w; bot y5 = -d;
+lft x6 = pcshiftx; y6 = top y5;
+x13 = x1; y13 = 1/4h;
+lft x15 = pcshiftx; y15=6/8h;
+x14 = 3/8[x13,x15]; bot y14 = 0;
+x16=1/2[x14,x15]; top y16 = h;
+x17=x13; top y17=h;
+rt x18 = w-pcshiftx; y18=h;
+if ductus:
+ pickup stylus;
+fi
+draw z1..z13..z4{down}..z5{left}..z6;
+draw z6--z13;
+%% top bowl
+draw z13..z14{left}..z15{up}..z16;
+draw z16..z17..z18;
+ductus:=false;
+penlabels(0,1,2,3,4,5,6,7,8,13,14,15,16,17,18,100);
+endchar; % end "g"
+
+cmchar "RTND letter h";
+beginchar("h", 2sb#+hstretch*(11/16x_height#+jut#),
+ asc_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+numeric n[];
+%% stem
+lft x1=lft x2=pcshiftx+jut;
+top y1=h; bot y2=0;
+%% bowl
+z3=1/2[z2,z1];
+rt x5 = w-pcshiftx; y5=y3;
+x4=9/16[x3,x5]; top y4 = h/ascratio;
+%%lft x6=x4; bot y6=0;
+x6=9/16[x4,x5];
+bot y6=0;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+%%draw_roundserif(2,1,srad);
+draw z1--z2;
+draw_flat_head(1); draw_flat_foot(2);
+draw z3--z4{right}...z5{down}...z6{-pdir};
+
+ductus:=false;
+penlabels(1,2,3,4,5,6,100);
+endchar; % end "h"
+
+cmchar "RTND letter i";
+beginchar("i", 2sb#+hstretch*(thick#+2jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+lft x1=lft x2=pcshiftx+jut;
+top y1=h; bot y2= thick;
+bot y3 = 0; rt x3 = w-pcshiftx;
+x8 = x1; y8 = h + 3/2thick;
+%%ductus:=true;
+draw_tstem(1,2,srad);
+draw_flatserif(1,2,srad);
+draw z2--z3;
+draw_pdot(8, dot_size);
+ductus:=false;
+penlabels(1,2,100);
+endchar; % end "i"
+
+cmchar "RTND letter j";
+beginchar("j", sb#+hstretch*(3/8x_height#),
+ x_height#, desc_depth#);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% stem
+rt x1 = w-pcshiftx; top y1 = h;
+x2=x1; y2=-1/2d;
+%% bottom hook
+lft x3 = 0; bot y3 = -d;
+x8 = x1; y8 = h + 3/2thick;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2; % stem
+draw_flatserif(1,2,srad);
+draw z2{down}..z3{-pdir}; % hook
+draw_pdot(8, dot_size);
+ductus:=false;
+penlabels(1,2,3,100);
+endchar; % end "j"
+
+cmchar "RTND letter k";
+beginchar("k", 2sb#+hstretch*(13/16x_height#+jut#),
+ asc_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+path pth[];
+numeric n[];
+pickup quill;
+%% stem
+n1 = h/ascratio; % x-height
+lft x1=lft x2=pcshiftx+jut;
+y1=h; bot y2=0;
+%% top arm
+%%z3=(x1,1/2n1);
+x3 = x1; top y3 = 1/2n1;
+rt x5=5/8[x1,w-pcshiftx]; top y5=n1;
+x4=1/2[x3,x5]; top y4=n1;
+pth1 := z3{pdir}..z5{up};
+%% lower arm
+pth2 := (rt x1,0)--(rt x1,h);
+z13 = pth1 intersectionpoint pth2;
+pickup threequarterquill;
+lft x14 = x13; bot y14 = y13;
+rt x7=w-pcshiftx; bot y7=0;
+pickup quill;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad); % stem
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+draw pth1; % upper arm
+pickup threequarterquill;
+%%draw z14{down}..z7{-ppdir}; % lower arm
+%%draw z14{down}..z7; % lower arm
+draw z14{-ppdir}..z7{right}; % lower arm
+pickup quill;
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,13,14,100);
+endchar; % end "k"
+
+cmchar "RTND letter l";
+beginchar("l", 2sb#+hstretch*(thick#+2jut#),
+ asc_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+lft x1=pcshiftx+jut; top y1=h;
+x2=x1;
+bot y2 = thick;
+rt x3 = w-pcshiftx; bot y3 = 0;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad);
+draw_flatserif(1,2,srad);
+draw z2--z3;
+ductus:=false;
+penlabels(1,2,3,4,100);
+endchar; % end "l"
+
+cmchar "RTND letter m";
+beginchar("m", 2sb#+hstretch*(15/16x_height#+2jut#), % 12/16 too narrow, 14 a bit
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+path pth[];
+pickup quill;
+%% left stem
+lft x1=pcshiftx+jut; top y1=h;
+x2=x1; bot y2=0;
+%% start of bowl
+x13=x1; y13=3/4h;
+%% bottom of right and middle stems
+rt x6 = w -pcshiftx - jut; y6=y2;
+z4 = 1/2[z2,z6];
+%% top of middle and right stems
+x3=x4; y3=y1;
+x5=x6; y5=y13;
+%% top of bowls
+x14=2/3[x13,x3]; top y14 = h;
+x33=x4; y33=y13;
+x34=2/3[x33,x5]; y34 = y14;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad); % left half
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+draw z13--z14{right}..z33{down}--z4;
+draw_flat_foot(4);
+draw z33--z34{right}..z5{down}--z6;
+draw_roundserif(6,5,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,13,14,33,34,100);
+endchar; % end "m"
+
+cmchar "RTND letter n";
+beginchar("n", 2sb#+hstretch*(9/16x_height#+2jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+%% left stem
+lft x1=pcshiftx+jut; top y1=h;
+x2=x1; bot y2=0;
+x13=x1; y13=3/4h;
+%% right stem
+rt x4 = w-pcshiftx-jut; y4=y2;
+x3 = x4; y3 = y13;
+x14 = 2/3[x13,x3]; top y14 = h;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad); % left stem
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+draw z13--z14{right}..z3{down}--z4;
+draw_roundserif(4,3,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,6,13,14,100);
+endchar; % end "n"
+
+cmchar "RTND letter o";
+beginchar("o", 2sb#+hstretch*(7/8x_height#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+lft x1=pcshiftx; rt x3=w-pcshiftx; y1=y3=h/2;
+x2=x4=w/2; top y2=h+o; bot y4=-o;
+draw z2..z3..z4{left}.. tension 0.8 ..{up}z1..cycle;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+ draw obfirst; draw obsecond; draw obouter; draw obinner;
+else:
+%% fill obouter; unfill obinner;
+fi
+ductus:=false;
+penlabels(1,2,3,4,5,100);
+endchar; % end "o"
+
+cmchar "RTND letter p";
+beginchar("p", 2sb#+hstretch*(14/16x_height#+jut#),
+ x_height#, desc_depth#);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% stem
+lft x1=lft x2=pcshiftx+jut;
+top y1=h; bot y2=-d;
+%% bowl % from "d"
+z3=3/4[(x1,0),z1];
+rt x5 = w-pcshiftx; y5=1/2h;
+x4=1/2[x3,x5]; top y4 = h;
+x6=x4; bot y6=0;
+z7=1/4[(x1,0),z1];
+
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad); % stem
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+draw z3--z4; draw z4..z5{down}..z6{left}..z7;
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,100);
+endchar; % end "p"
+
+cmchar "RTND letter q";
+beginchar("q", 2sb#+hstretch*(7/8x_height#),
+ x_height#, desc_depth#);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% right stem
+rt x1=w-pcshiftx; top y1=h;
+x2=x1; bot y2=-d;
+%% bowl
+z3=1/4[(x1,0),z1];
+lft x5=pcshiftx; y5=1/2h;
+x4=1/2[x3,x5]; bot y4=0;
+x6=x4; top y6=h;
+%%z7=3/4[(x1,0),z1];
+z7=z1;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad);
+%%draw_flatserif(1,2,srad);
+%%draw_roundserif(2,1,srad);
+draw_flat_foot(2);
+draw z3{-pdir}..z4{left}..z5{up}..z6{right}..z7{pdir};
+ductus:=false;
+penlabels(0,1,2,3,4,5,6,7,8,100);
+endchar; % end "q"
+
+cmchar "RTND letter r";
+beginchar("r", 2sb#+hstretch*(11/16x_height#+jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% stem
+lft x1=lft x2=pcshiftx+jut;
+top y1=h; bot y2=0;
+%% bowl
+z3=3/4[z2,z1];
+rt x5 = w-pcshiftx; y5=y3;
+x4=1/2[x3,x5]; top y4 = h;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw_tstem(1,2,srad); % stem
+draw_flatserif(1,2,srad);
+draw_flat_foot(2);
+%%draw_roundserif(2,1,srad);
+draw z3{pdir}..z4{right}..z5{pdir};
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,100);
+endchar; % end "r"
+
+cmchar "RTND letter s";
+beginchar("s", 2sb#+hstretch*(7/8x_height#),
+ x_height#, 0);
+adjust_fit(0,0);
+numeric n[];
+pcshiftx := sb;
+pickup quill;
+
+z50=(1/2w, 1/2h);
+x60 = w-pcshiftx; z60 = z50 shifted (whatever*pdir);
+x40 = pcshiftx; z40 = z50 shifted (whatever*pdir);
+rt x5 = x50; top y5 = y50;
+z54 = (lft x5, bot y5);
+lft x6 = x50; bot y6 = y50;
+z56 = (rt x6, top y6);
+
+z1 = 1/2[z56,z60];
+x3 = 1/2[x5,x1]; top y3 = h;
+
+z10 = 1/2[z54,z40];
+x8 = x56;
+bot y8 = 0;
+
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z5{ppdir}..z3..z1{-ppdir};
+
+draw z6..z8{left}..z10{ppdir};
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,10,11,17,20,26,27,28,40,50,54,56,60,100);
+endchar; % end "s"
+
+cmchar "RTND letter t";
+beginchar("t", 2sb#+hstretch*(10/16x_height#+jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% bar
+lft x1 = pcshiftx; top y1 = h;
+rt x2 = w - pcshiftx; y2 = y1;
+%% stem
+lft x3 = rt x1; bot y3 = top y1;
+rt x5 = x2; bot y5 = 0;
+x4 = x3; bot y4 = thick;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2; % bar
+draw z3--z4--z5; % stem
+ductus:=false;
+penlabels(1,2,3,4,5,6,11,12,100);
+endchar; % end "t"
+
+cmchar "RTND letter u";
+beginchar("u", 2sb#+hstretch*(9/16x_height#+2jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+numeric n[];
+pickup quill;
+%% left stem
+lft x1 = pcshiftx + jut; top y1 = h;
+x13=x1; y13=1/3h;
+rt x3=w-pcshiftx-jut; y3=y1;
+x4=x3; bot y4=0;
+z33=1/4[z4,z3]; % start of bowl
+x14=1/3[x1,x3]; bot y14=0;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+%%draw z1--z13{down}...z14{right}...z33{pdir};
+draw z1--z13--z14{right}...z33{pdir};
+draw_flatserif(1,13,srad);
+draw_tstem(3,4,srad); % right stem
+draw_flatserif(3,4,srad);
+draw_roundserif(4,3,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,11,13,14,16,33,100);
+endchar; % end "u"
+
+cmchar "RTND letter v";
+beginchar("v", 2sb#+hstretch*(11/16x_height#+jut#), % 13/16 too wide
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+%% left stem
+lft x1 = pcshiftx + jut; top y1 = h;
+%% right stem
+rt x5=w-pcshiftx; top y5 = h;
+bot y3 = 0;
+x3 = 1/2[x1,x5];
+z51 = (x1,0); z55=(x5,0);
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1{down}..z3; % left stem
+draw_flatserif(1,51,srad);
+draw z5{down}..z3; % right stem
+draw_flatserif(5,55,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,11,13,14,23,26,100);
+endchar; % end "v"
+
+cmchar "RTND letter w";
+beginchar("w", 2sb#+hstretch*(15/16x_height#+2jut#),
+ x_height#, 0);
+adjust_fit(0,0);
+pcshiftx := sb;
+pickup quill;
+%% left stem
+lft x1 = pcshiftx + jut; top y1 = h;
+x13=x1; y13=1/3h;
+rt x5=w-pcshiftx-jut; y5=y1;
+x6=x5; bot y6=0;
+z53=1/4[z6,z5]; % start of bowl
+z3 = 1/2[z1,z5];
+z33=(x3,y13);
+x14=1/3[x1,x3]; bot y14=0;
+x34=1/3[x3,x5]; y34=y14;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z13--z14{right}...z33{pdir}; % left
+draw_flatserif(1,13,srad);
+draw z3--z33--z34{right}...z53{pdir}; % middle
+draw_flatserif(3,33,srad);
+draw_tstem(5,6,srad); % right stem
+draw_flatserif(5,6,srad);
+draw_roundserif(6,5,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,11,13,14,33,34,53,16,100);
+endchar; % end "w"
+
+cmchar "RTND letter x";
+beginchar("x", 2sb#+hstretch*(7/2thick#),
+ x_height#, 0);
+adjust_fit(0,0);
+path pth[];
+numeric n[];
+pcshiftx := sb;
+pickup quill;
+n1 := w-2pcshiftx; % total width
+n2 := thick; % triangle side
+%% diag top left to bottom right
+lft x1 = pcshiftx; top y1 = h;
+rt x4 = w-pcshiftx; bot y4 = 0;
+x2 = x3 = 1/2w;
+top y5 = h; lft x5 = rt x2;
+top y2 = bot y5;
+rt x6 = w - pcshiftx; y6 = y2;
+y3 = h - y2;
+lft x8 = lft x1; bot y8 = 0;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2--z3--z4; % top left to bottom right
+draw z5--z6; % top right
+draw z3--z8; % bottom left
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,10,25,251,252,40,50,150,60,160,100);
+endchar; % end "x"
+
+cmchar "RTND letter y";
+beginchar("y", 2sb#+hstretch*(11/16x_height#+jut#),
+ x_height#, desc_depth#);
+adjust_fit(0,0);
+pcshiftx := sb;
+path pth[];
+numeric n[];
+pickup quill;
+%% left stem top
+lft x1 = pcshiftx + jut; top y1 = h;
+bot y3 = 0;
+%% right stem
+rt x5=w-pcshiftx; top y5 = h;
+%%lft x9=-1/2w; bot y9 = -d;
+lft x9 = 0; bot y9 = -d;
+pth1 := z9{right}..z5{up};
+pth2 := (0,y3)--(w,y3);
+z99 = pth1 intersectionpoint pth2;
+x3 = x99;
+z51 = (x1,0); z55=(x5,0);
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1{down}..z3; % left stem
+draw_flatserif(1,51,srad);
+draw pth1; % right stem
+draw_flatserif(5,55,srad);
+ductus:=false;
+penlabels(1,2,3,4,5,6,7,8,9,10,100);
+endchar; % end "y"
+
+cmchar "RTND letter z";
+beginchar("z", 2sb#+hstretch*(12/16x_height#),
+ x_height#, 0);
+adjust_fit(0,0);
+numeric n[];
+path pth[];
+pcshiftx := sb;
+pickup quill;
+%% top bar ends
+lft x1 = pcshiftx; rt x2 = w-pcshiftx;
+top y1 = top y2 = h;
+%% bottom bar ends
+lft x3 = pcshiftx; rt x4 = w-pcshiftx;
+bot y3 = bot y4 = 0;
+%% middle bar ends
+lft x5 = x1; rt x6 = x2;
+y5 = y6 = 1/2h;
+%%ductus:=true;
+if ductus:
+ pickup stylus;
+fi
+draw z1--z2; draw z3--z4; draw z5--z6; % bars
+draw z2--z3; % diagonal
+ductus:=false;
+penlabels(1,2,3,4,5,6,10o,10i,20o,20i,100);
+endchar; % end "z"
+