% Mxedruli Base File `mxedbase.mf' % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Designed by Johannes Heinecke % % Sprachwissenschaftliches Seminar % % Universit"at Heidelberg % % 69117 Heidelberg % % % % Please send any improvements, corrections, suggestions, enhancements etc % % to the Author! % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % mxedbase:=1; % Es soll nur einmal geladen werden. newinternal slant; def font_mxed_setup = % Eigenes Macro define_pixels(mxu, mxlittle, mxhalf, mxone, mxheight, mxthird, mxmiddle, mxtop, mxfeet, mxlow, mxzw); define_blacker_pixels(px1, py1, pdot); pickup pencircle xscaled px1 yscaled py1 rotated -10; % was 10 mxed_pen:=savepen; pickup pencircle scaled pdot; mxed_dot:=savepen; currenttransform:=identity slanted slant yscaled aspect_ratio; enddef; if known cmbase: def makebox(text rule) = for y=0,h,mxlittle,-d,mxthird: rule((0,y)t_,(r,y)t_); endfor % horizontals for x=0,r,r-mxzw,mxhalf,mxone: rule((x,-d)t_,(x,h)t_); endfor % verticals % for x=u*(1+floor(l/u)) step u until r-1: % rule((x,-body_depth)t_,(x,body_height)t_); endfor % more verticals % if charic<>0: % rule((r+charic*pt,h.o_),(r+charic*pt,.5h.o_)); fi % italic correction enddef; else: def makebox(text r) = for y=0,h.o_,-d.o_,mxlittle: r((0,y),(w,y)); endfor % horizontals for x=0,w,w-mxzw: r((x,-d.o_),(x,h.o_)); endfor % verticals if charic<>0: r((w+charic*hppp,h.o_),(w+charic*hppp,.5h.o_)); fi enddef; fi