%		osmanian.mf
%
% This font was designed by Alan M Stanier	( alan@essex.ac.uk ),
% at Essex University Computer Service, Colchester, Essex CO4 3EA. England.
% 
% If you make significant additions or improvements to the font,
% please email me an updated version
%
% The osmanian alphabet was invented in the early 20th century by
% Osman Yusuf, for the writing of the Somali language.
%
%
mg:=1.0;	% CHANGE THIS TO GET DIFFERENT SIZES OF FONT (font size = 10*mg pt)

mode_setup;
tracingtitles := 1;
pensize#:=mg*0.8pt;
height#:=mg*9.6pt#;
fullwidth#:=mg*7.5pt#;
narrowwidth#:=mg*5.5pt#;
thinwidth#:=3.5pt#;
define_pixels(height,fullwidth,marrowwidth,thinwidth);

def getpen = pickup pensquare scaled pensize# enddef;

beginchar("@",narrowwidth#,height#,0);
getpen;
draw (15,30){left} .. (0,22.5){down} .. (15,7.5){down}
	.. (7.5,0){left} .. (0,7.5){up};
endchar;

beginchar("A",fullwidth#,height#,0);
getpen;
draw flex((0,30),(4,20),(8,30));
draw (8,30){down} .. (12,20);
draw (23,30) -- (3,5) & flex ((3,5),(7,6),(16,0),(25,2));
endchar;

beginchar("B",fullwidth#,height#,0);
getpen;
draw (17,30) .. (10,0){down} -- (25,0);
draw (14.5,25) -- (2,25) .. (0,10){down} -- (11,10);
endchar;

beginchar("C",thinwidth#,height#,0);
getpen;
draw (0,0) -- (5,30);
endchar;

beginchar("D",fullwidth#,height#,0);
getpen;
draw (0,0) -- (5,30);
draw (20,0) -- (25,30);
draw (3.333,20) -- (23.333,20);
endchar;

beginchar("E",fullwidth#,height#,0);
getpen;
draw (0,0) -- (5,30);
draw (2.5,15) -- (17.5,15) .. (25,10){down} .. (20,0);
endchar;

beginchar("F",fullwidth#,height#,0);
getpen;
draw flex((0,5),(12.5,7),(25,0)) &
	flex ((25,0),(22,25),(15,30)) &
	flex ((15,30),(5,17.5),(0,5));
endchar;

beginchar("G",fullwidth#,height#,0);
getpen;
draw (0,30) -- (25,30) -- (5,0);
endchar;

beginchar("H",fullwidth#,height#,0);
getpen;
draw (0,20) -- (0,30) -- (25,30) .. (10,17)
	.. (22.5,0){right} .. (25,7.5){up} .. (10,17);
endchar;

beginchar("I",fullwidth#,height#,0);
getpen;
draw flex ((25,10),(18.75,0),(12.5,10)) .. (12.5,10)
	-- (15,30) & flex ((15,30),(0,20),(12.5,10));
endchar;

beginchar("J",fullwidth#,height#,0);
getpen;
draw (25,16) -- (15,15) .. (5,0){left} & flex((5,0),(0,10),(10,30));
endchar;

beginchar("K",narrowwidth#,height#,0);
getpen;
draw (10,0) .. (15,15){up} .. (0,22.5){up}
	.. (5,30){right} .. (10,22.5){down} .. (0,5);
endchar;

beginchar("L",narrowwidth#,height#,0);
getpen;
draw flex((0,30),(7.5,25),(15,30)) & flex((15,30),(10,10),(12.5,0));
draw (5,15) -- (15,15);
endchar;

beginchar("M",fullwidth#,height#,0);
getpen;
draw (20,30){left} .. (0,25){down} .. (22.5,20){right};
draw (22.5,20){left} .. (0,7.5){down} .. (25,0){right};
endchar;

beginchar("N",fullwidth#,height#,0);
getpen;
draw (0,30) .. (7.5,7.5){down} .. (4,0){left} ..
	(0,7.5){up} .. (20,22.5){up} .. (15,30){left}
	.. (10,22.5){down} .. (25,0){right};
endchar;

beginchar("O",fullwidth#,height#,0);
getpen;
draw (5,30) .. (15,20){right} .. (25,25){up} ..
	(20,30){left} .. (10,0){left} .. (0,5);
endchar;

beginchar("P",fullwidth#,height#,0);
getpen;
draw (0,0) -- (0,25) & flex((0,25),(12.5,30),(25,25))
	.. (25,25) -- (25,0);
endchar;

beginchar("Q",fullwidth#,height#,0);
getpen;
draw flex((0,0),(5,1),(10,0)) &
	flex((10,0),(17.5,7),(25,15)) &
	flex((25,15),(17,16),(10,15))
	& flex((10,15),(12.5,21),(15,30));
endchar;

beginchar("R",fullwidth#,height#,0);
getpen;
draw (0,25) .. (0,30) & flex((0,30),(12.5,28),(25,30))
	.. (25,30) -- (0,0) -- (25,0) -- (25,5);
endchar;

beginchar("S",fullwidth#,height#,0);
getpen;
draw flex((0,30),(10,24),(25,30)) .. (25,30) -- (10,0);
draw (17.5,17.5){right} .. (25,0){down};
endchar;

beginchar("T",fullwidth#,height#,0);
getpen;
draw flex((25,30),(22.5,25),(20,30)) .. (20,30)
	-- (0,5){down} .. (5,0){right} -- (25,5);
endchar;

beginchar("U",fullwidth#,height#,0);
getpen;
draw flex((25,25),(12.5,20),(0,25)) &
	flex ((0,25),(5,30),(10,25)) .. (10,25)
	-- (5,0) -- (25,0);
endchar;

beginchar("V",narrowwidth#,height#,0);
getpen;
draw (15,0) -- (15,30) & flex((15,30),(0,22.5),(15,15));
endchar;

beginchar("W",fullwidth#,height#,0);
getpen;
draw (0,10) -- (9,1) .. (10,0){right}  .. (17.5,12.5) ..
	(25,25){up} .. (20,30){left} .. (15,25){down} .. (22,22);
endchar;

beginchar("X",fullwidth#,height#,0);
getpen;
draw flex((0,30),(12.5,28),(25,30)) .. (25,30) -- (0,0);
draw (17.5,15){right} .. (25,0){down};
endchar;

beginchar("Y",fullwidth#,height#,0);
getpen;
draw flex((25,30),(17.5,26),(10,20)) &
	flex((10,20),(17.5,14),(25,10)) &
	flex((25,10),(12.5,4),(0,0));
endchar;

beginchar("Z",fullwidth#,height#,0);
getpen;
draw flex((10,30),(5,16),(0,0)) & flex((0,0),(12.5,6),(25,10));
endchar;

end