diff options
Diffstat (limited to 'fonts/unsupported/mfbook')
-rw-r--r-- | fonts/unsupported/mfbook/logobase.mf | 34 | ||||
-rw-r--r-- | fonts/unsupported/mfbook/metafon.mf | 50 |
2 files changed, 84 insertions, 0 deletions
diff --git a/fonts/unsupported/mfbook/logobase.mf b/fonts/unsupported/mfbook/logobase.mf new file mode 100644 index 0000000000..4a72875865 --- /dev/null +++ b/fonts/unsupported/mfbook/logobase.mf @@ -0,0 +1,34 @@ +% Base file for the METAFONT logo +logobase:=1; % when logobase is known, this file has been input + +def font_setup = + if unknown slant: slant:=0 else: currenttransform:= + identity slanted slant yscaled aspect_ratio fi; + + 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); enddef; + +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; diff --git a/fonts/unsupported/mfbook/metafon.mf b/fonts/unsupported/mfbook/metafon.mf new file mode 100644 index 0000000000..aeb1764b88 --- /dev/null +++ b/fonts/unsupported/mfbook/metafon.mf @@ -0,0 +1,50 @@ +beginlogochar("M",18); +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("E",14); +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("T",13); +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("A",15); +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("F",14); +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("O",15); +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("N",15); +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; |