diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/cs/csotherl.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/cs/csotherl.mf | 288 |
1 files changed, 288 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/cs/csotherl.mf b/Master/texmf-dist/fonts/source/public/cs/csotherl.mf new file mode 100644 index 00000000000..3fe51c32a80 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/cs/csotherl.mf @@ -0,0 +1,288 @@ +% This is csotherl.mf in text format, as of 89/05/08 +% written by P. Novak, Prague +% Czech and slovak letters with accents +% Remaining lower case letters with different accents + +cmchar "The letter o with circumflex"; +beginchar(cs_uo,9u#,lc_acute_height#,0); +italcorr .7h#*slant; +adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi); +penpos1(vair,90); penpos3(vair',-90); +penpos2(curve,180); penpos4(curve,0); +x2r=hround max(.5u,1.25u-.5curve); +x4r=w-x2r; x1=x3=.5w; y1r=x_height+vround 1.5oo; y3r=-oo; +y2=y4=.5x_height-vair_corr; y2l:=y4l:=.52x_height; +penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3) + & pulled_arc.e(3,4) & pulled_arc.e(4,1) & cycle; % bowl +penlabels(1,2,3,4); +lc_circumflex(x1); +endchar; + +cmchar "The letter u with circle"; +beginchar(cs_ou,10u#,lc_circle_height#,0); +italcorr h#*slant-serif_fit#+.5stem#-2u#; +adjust_fit(serif_fit#+stem_shift#,serif_fit#-stem_shift#); +numeric light_vair; light_vair=vair if hefty: -vround 2vair_corr fi; +if light_vair<fine.breadth: light_vair:=fine.breadth; fi +pickup tiny.nib; pos1(stem,0); pos2(stem,0); +pos3(stem,0); pos4(stem',0); +lft x1l=hround(2.5u-.5stem); x1=x2; x3=w-x1; x3r=x4r; +if serifs: top y1=x_height+min(oo,serif_drop); bot y4=-min(oo,serif_drop); +else: top y1=x_height; bot y4=0; fi +pos0(stem,0); pos0'(stem',0); x0=x3; x0'=x4; y0=y0'; +penpos2'(stem-fine,-180); z2'=z2; y3=y1; y2=.5bar_height; +penpos5(max(eps,light_vair-fine),-90); penpos6(thin_join-fine,0); +y6=y0=2/3bar_height; +filldraw stroke z1e--z2e; % left stem +filldraw stroke z3e..z0e--z0'e..z4e; % right stem +pickup fine.nib; bot y5r=-oo; x5l=.5w-.25u; lft x6l=tiny.lft x0l; +(x,y5r)=whatever[z5l,z6l]; x5r:=max(x,.5[x5,x2'r]); +filldraw stroke {{interim superness:=hein_super; + pulled_arc.e(2',5)}} & z5e{right}...{up}z6e; % arc +if serifs: sloped_serif.l(1,2,a,1/3,jut,serif_drop); % upper left serif + sloped_serif.l(3,0,b,1/3,jut,serif_drop); % upper right serif + sloped_serif.r(4,0',c,1/3,jut,min(oo,serif_drop)); fi % lower right serif +penlabels(1,2,3,4,5); labels(6); +lc_circle_accent(.5w); +endchar; + + +cmchar "The letter a with grave"; +beginchar(cs_ax,9u#,lc_acute_height#,0); +bh#:=min(bar_height#,1.14x_height#-bar_height#); define_pixels(bh); +italcorr h#*slant+.5stem#-serif_fit#-2u#; +adjust_fit(0,serif_fit# if serifs: if hair#+.5stem#>1.5u#:-.25u# fi\\fi); +pickup fine.nib; top y3r=x_height+vround 1.5oo; +if serifs: pos1(flare,180); pos2(hair,180); + pos3(vair,90); lft x1r=hround max(u,2.1u-.5flare); x3=.5w-.5u; + y1=min(bh+.5flare+2vair+2,.9[bh,x_height]-.5flare); + bulb(3,2,1); % bulb +else: pos1(5/7[vair,flare],95); x1l=good.x 1.5u; x1r:=good.x x1r; + pos3(1/8[vair,thin_join],90); + x3=.5w-.2u; top y1r=vround .82[bh,top y3r]; + filldraw stroke term.e(3,1,left,.9,4); fi % terminal +pos4(stem,0); rt x4r=hround(w-2.5u+.5stem); y4=1/3[bh,x_height]; +pos5(stem,0); x5=x4; y5=max(.55bh,2vair); +filldraw stroke super_arc.e(3,4)&z4e..z5e; % arc and stem +pos6(.3[thin_join,vair],90); x6=x4; bot y6=bh; +pos7(hround(curve-2stem_corr),180); +lft x7r=hround max(.5u,1.5u-.5curve); y7=1/3[top y8l,top y6r]; +pos8(vair,270); x8l=.5w-.75u; bot y8r=-oo; +pos9(thin_join,360); z9l=z5l; +(x,y8r)=whatever[z8l,z9l]; x8r:=max(x,x8-u); +{{interim superness:=more_super; + filldraw stroke z9e{down}...z8e{left}...{up}z7e&super_arc.e(7,6)}}; % bowl +if serifs: numeric shaved_stem; shaved_stem=hround(stem-3stem_corr); + if hair#+.5stem#>1.5u#: pickup tiny.nib; + pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; y10=.2[.5tiny,bh]; + pos11(shaved_stem,0); rt x11r=hround(w-.25u); bot y11=0; + pos12(shaved_stem,0); x11=x12; top y12=slab+eps; + filldraw z5'l---z10l...z11l{right}--z11r + --z12r{left}...z10r+.75(z12-z11)---z5'r--cycle; % foot + else: pickup crisp.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; y10=1/3bh; + pos11(.2[vair,stem],90); x11r=.5[x10r,x12r]; bot y11l=-vround .5oo; + pos12(hair,180); rt x12l=hround(w-.1u); y12=max(y10,y11+vair); + pos13(hair,180); x13=x12; top y13=max(vround .6bh,top y12); + (x',y11l)=whatever[z11r,z12r]; x11l:=max(x',x10); + filldraw stroke z5'e---z10e...z11e{right}...z12e---z13e; fi % hook +else: numeric shaved_stem; shaved_stem=hround(stem-stem_corr); + pickup tiny.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; bot y10=0; + filldraw stroke z5'e--z10e; fi % base of stem +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); +lc_grave_accent(x3+0.75u); +endchar; + +cmchar "The letter l with acute"; +beginchar(cs_ll,5u#,uc_acc_height#,0); +l_width#:=5u#+2serif_fit#; +italcorr asc_height#*slant-serif_fit#+.5stem#-2u#; +adjust_fit(serif_fit#+stem_shift#,serif_fit#-stem_shift#); +pickup tiny.nib; pos1(stem',0); pos2(stem',0); +if odd(w-stem'): change_width; fi +lft x1l=hround(.5w-.5stem'); x1=x2; top y1=asc_height; bot y2=0; +filldraw stroke z1e--z2e; % stem +if serifs: sloped_serif.l(1,2,a,1/3,jut,serif_drop); % upper serif + dish_serif(2,1,b,1/3,jut,c,1/3,jut); fi % lower serif +penlabels(1,2); +uc_acute_accent(x1); +endchar; + +cmchar "The letter t with hachek"; +beginchar(cs_tj,6u#+max(u#,.5stem#),lc_acute_height#,0); +hh' = min(asc_height,if hefty:9/7 else:10/7 fi\\ x_height); +italcorr lc_acute_height#*slant if serifs: -.9u# else: -.4u# fi; +adjust_fit(0,if serifs: 0 else: -.5u# fi); +numeric shaved_stem; shaved_stem=hround(stem if hefty:-\\2stem_corr fi); +pickup fine.nib; pos2(shaved_stem,180);pos3(shaved_stem,180); +lft x2r=lft x3r=hround(2.5u-.5shaved_stem); +y2=y8; y3=max(.5bar_height,2vair); +pickup crisp.nib; pos8(bar,90); +rt x8=hround(w-1.3u); top y8r=x_height; lft x7=hround 1/3u; y7l=y8l; +if hefty: pos7(bar,90); + filldraw stroke z7e--z8e; % crossbar + pickup tiny.nib; pos1(hround(shaved_stem-stem_corr),0); + rt x1r=fine.rt x2l; top y1=hh'; + penpos2'(x1r-x1l,0); x2'=x1; y2'=y2; + filldraw stroke z1e--z2'e; % upper terminal +else: pos7(vair,90); pos1(hair,0); + rt x1r=fine.rt x2l; top y1=hh'; + filldraw z1l{down}...{left}z7r--z7l--z8l + --z8r--(x1r,y8r)--z1r--cycle; fi % upper terminal and crossbar +pickup fine.nib; interim superness:=more_super; +pos4(vair',-90); bot y4r=-oo; rt x5r=hround(w-u); +if serifs: pos5(hair,0); y5=y3; x4l=.5[x3l,x5l]; + (x,y4r)=whatever[z4l,z5l]; x4r:=max(x,.5[x3r,x4]); + filldraw stroke z2e..super_arc.e(3,4)...{up}z5e; % stem and hook + pickup crisp.nib; pos6(hair,0); pos5'(hair,0); + x6=x5=x5'; top y6=max(vround .75bar_height,top y5); y5=y5'; + filldraw stroke z5'e--z6e; % terminal +else: pos5(vair,-75); top y5l=vround .2[top y4l,bar_height]; + x5l:=good.x x5l; x4l=1/3[x3l,x5l]; x4r:=1/3[x3r,x5r]; y3l:=y3l+.2vair; + filldraw stroke z2e..super_arc.e(3,4); % stem and hook + path p; p=stroke z4e{right}..tension .9 and atleast 1..z5e; % terminal + if (xpart(z5l-precontrol 1 of p)<0) or (xpart(z5r-postcontrol 2 of p)<0): + filldraw stroke z4e{right}...{up}z5e; + else: filldraw p; fi fi; +penlabels(1,2,3,4,5,6,7,8); +dtl_hachek(x8)(y1+.5dot_diam); +endchar; + +cmchar "The letter d with hachek"; +beginchar(cs_dj,10u#+serif_fit#,lc_acute_height#,0); +italcorr lc_acute_height#*slant-serif_fit#+.5stem#-2u#; +adjust_fit(0,serif_fit#); +pickup tiny.nib; pos1(stem',0); pos2(stem,0); +pos0'(stem',0); pos0(stem,0); z0r=z0'r; x0'=x1; x0=x2; +rt x1r=hround(w-2.5u+.5stem'); top y1=asc_height; +numeric edge; edge=lft x2l; +pickup fine.nib; pos3(if hefty:thin_join else: hair fi,0); +pos4(vair,90); pos5(curve,180); pos6(vair,270); penpos7(x3r-x3l,360); +lft x3l=min(lft x3l-(rt x3r-tiny.rt x2r),1/3[lft x2,edge]); +y3=1/8[bar_height,x_height]; +x4l=.5(w-serif_fit)-.3u; top y4r=x_height+oo; +lft x5r=hround max(1.35u-.5curve,.6u); y5=.5x_height; +x6l=x4l-.2u; bot y6r=-oo; +x7=x3; y7=min(y3,y6+y4-y3+.6vair); +(x,y4r)=whatever[z3l,z4l]; x4r:=max(x,.5[x5r,x4]); +(x',y6r)=whatever[z7l,z6l]; x6r:=max(x',.5[x5r,x6]); +filldraw stroke z3e{up}...pulled_arc.e(4,5) + & pulled_arc.e(5,6)...{up}z7e; % bowl +y0=ypart(((edge,asc_height)--(edge,0))intersectionpoint(z3l{up}...{left}z4l)); +pickup tiny.nib; bot y2=if serifs:-min(oo,serif_drop) else: 0 fi; +filldraw stroke z1e--z0'e--z0e--z2e; % stem +if serifs: sloped_serif.l(1,0',a,1/3,jut,serif_drop); % upper serif + sloped_serif.r(2,0,b,1/3,jut,min(oo,serif_drop)); fi % lower serif +penlabels(0,1,2,3,4,5,6,7); +dtl_hachek(x0r+u+.5dot_diam)(y1); +endchar; + + +cmchar "The letter l with hachek"; +beginchar(cs_lj,5u#,uc_acc_height#,0); +l_width#:=5u#+2serif_fit#; +italcorr lc_acute_height#*slant-serif_fit#+.5stem#-2u#; +adjust_fit(serif_fit#+stem_shift#,serif_fit#-stem_shift#); +pickup tiny.nib; pos1(stem',0); pos2(stem',0); +if odd(w-stem'): change_width; fi +lft x1l=hround(.5w-.5stem'); x1=x2; top y1=asc_height; bot y2=0; +filldraw stroke z1e--z2e; % stem +if serifs: sloped_serif.l(1,2,a,1/3,jut,serif_drop); % upper serif + dish_serif(2,1,b,1/3,jut,c,1/3,jut); fi % lower serif +penlabels(1,2); +dtl_hachek(x1r+u+.5dot_diam)(y1); +endchar; + +cmchar "The letter a with trema"; +beginchar(cs_ae,9u#,lc_trema_height#,0); +bh#:=min(bar_height#,1.14x_height#-bar_height#); define_pixels(bh); +italcorr h#*slant+.5stem#-serif_fit#-2u#; +adjust_fit(0,serif_fit# if serifs: if hair#+.5stem#>1.5u#:-.25u# fi\\fi); +pickup fine.nib; top y3r=x_height+vround 1.5oo; +if serifs: pos1(flare,180); pos2(hair,180); + pos3(vair,90); lft x1r=hround max(u,2.1u-.5flare); x3=.5w-.5u; + y1=min(bh+.5flare+2vair+2,.9[bh,x_height]-.5flare); + bulb(3,2,1); % bulb +else: pos1(5/7[vair,flare],95); x1l=good.x 1.5u; x1r:=good.x x1r; + pos3(1/8[vair,thin_join],90); + x3=.5w-.2u; top y1r=vround .82[bh,top y3r]; + filldraw stroke term.e(3,1,left,.9,4); fi % terminal +pos4(stem,0); rt x4r=hround(w-2.5u+.5stem); y4=1/3[bh,x_height]; +pos5(stem,0); x5=x4; y5=max(.55bh,2vair); +filldraw stroke super_arc.e(3,4)&z4e..z5e; % arc and stem +pos6(.3[thin_join,vair],90); x6=x4; bot y6=bh; +pos7(hround(curve-2stem_corr),180); +lft x7r=hround max(.5u,1.5u-.5curve); y7=1/3[top y8l,top y6r]; +pos8(vair,270); x8l=.5w-.75u; bot y8r=-oo; +pos9(thin_join,360); z9l=z5l; +(x,y8r)=whatever[z8l,z9l]; x8r:=max(x,x8-u); +{{interim superness:=more_super; + filldraw stroke z9e{down}...z8e{left}...{up}z7e&super_arc.e(7,6)}}; % bowl +if serifs: numeric shaved_stem; shaved_stem=hround(stem-3stem_corr); + if hair#+.5stem#>1.5u#: pickup tiny.nib; + pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; y10=.2[.5tiny,bh]; + pos11(shaved_stem,0); rt x11r=hround(w-.25u); bot y11=0; + pos12(shaved_stem,0); x11=x12; top y12=slab+eps; + filldraw z5'l---z10l...z11l{right}--z11r + --z12r{left}...z10r+.75(z12-z11)---z5'r--cycle; % foot + else: pickup crisp.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; y10=1/3bh; + pos11(.2[vair,stem],90); x11r=.5[x10r,x12r]; bot y11l=-vround .5oo; + pos12(hair,180); rt x12l=hround(w-.1u); y12=max(y10,y11+vair); + pos13(hair,180); x13=x12; top y13=max(vround .6bh,top y12); + (x',y11l)=whatever[z11r,z12r]; x11l:=max(x',x10); + filldraw stroke z5'e---z10e...z11e{right}...z12e---z13e; fi % hook +else: numeric shaved_stem; shaved_stem=hround(stem-stem_corr); + pickup tiny.nib; pos5'(shaved_stem,0); rt x5'r=fine.rt x5r; y5'=y5; + pos10(shaved_stem,0); x10=x5'; bot y10=0; + filldraw stroke z5'e--z10e; fi % base of stem +penlabels(1,2,3,4,5,6,7,8,9,10,11,12,13); +lc_trema_accent(x4-4u,x4); +endchar; + + +cmchar "The letter o with trema"; +beginchar(cs_oe,9u#,lc_trema_height#,0); +italcorr .7h#*slant; +adjust_fit(if monospace: .5u#,.5u# else: 0,0 fi); +penpos1(vair,90); penpos3(vair',-90); +penpos2(curve,180); penpos4(curve,0); +x2r=hround max(.5u,1.25u-.5curve); +x4r=w-x2r; x1=x3=.5w; y1r=x_height+vround 1.5oo; y3r=-oo; +y2=y4=.5x_height-vair_corr; y2l:=y4l:=.52x_height; +penstroke pulled_arc.e(1,2) & pulled_arc.e(2,3) + & pulled_arc.e(3,4) & pulled_arc.e(4,1) & cycle; % bowl +penlabels(1,2,3,4); +lc_trema_accent(x1-2u,x1+2u); +endchar; + +cmchar "The letter u with trema"; +beginchar(cs_ue,10u#,lc_trema_height#,0); +italcorr h#*slant-serif_fit#+.5stem#-2u#; +adjust_fit(serif_fit#+stem_shift#,serif_fit#-stem_shift#); +numeric light_vair; light_vair=vair if hefty: -vround 2vair_corr fi; +if light_vair<fine.breadth: light_vair:=fine.breadth; fi +pickup tiny.nib; pos1(stem,0); pos2(stem,0); +pos3(stem,0); pos4(stem',0); +lft x1l=hround(2.5u-.5stem); x1=x2; x3=w-x1; x3r=x4r; +if serifs: top y1=x_height+min(oo,serif_drop); bot y4=-min(oo,serif_drop); +else: top y1=x_height; bot y4=0; fi +pos0(stem,0); pos0'(stem',0); x0=x3; x0'=x4; y0=y0'; +penpos2'(stem-fine,-180); z2'=z2; y3=y1; y2=.5bar_height; +penpos5(max(eps,light_vair-fine),-90); penpos6(thin_join-fine,0); +y6=y0=2/3bar_height; +filldraw stroke z1e--z2e; % left stem +filldraw stroke z3e..z0e--z0'e..z4e; % right stem +pickup fine.nib; bot y5r=-oo; x5l=.5w-.25u; lft x6l=tiny.lft x0l; +(x,y5r)=whatever[z5l,z6l]; x5r:=max(x,.5[x5,x2'r]); +filldraw stroke {{interim superness:=hein_super; + pulled_arc.e(2',5)}} & z5e{right}...{up}z6e; % arc +if serifs: sloped_serif.l(1,2,a,1/3,jut,serif_drop); % upper left serif + sloped_serif.l(3,0,b,1/3,jut,serif_drop); % upper right serif + sloped_serif.r(4,0',c,1/3,jut,min(oo,serif_drop)); fi % lower right serif +penlabels(1,2,3,4,5); labels(6); +lc_trema_accent(x1+.5u,x3-.5u); +endchar; |