diff options
author | Karl Berry <karl@freefriends.org> | 2011-12-20 01:14:31 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-12-20 01:14:31 +0000 |
commit | 46ec85d8296f3f8b98fd3a3a9943887dc29cbbdb (patch) | |
tree | 513f3ff2db4761df9eccb2dbf3baff73df5ddaf4 /Master/texmf-dist/fonts/source | |
parent | bab3fcb32bd0ad0316456ecb37ef4b3609064f79 (diff) |
ogham is back, now pd
git-svn-id: svn://tug.org/texlive/trunk@24876 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source')
-rw-r--r-- | Master/texmf-dist/fonts/source/public/ogham/ogham.mf | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/ogham/ogham.mf b/Master/texmf-dist/fonts/source/public/ogham/ogham.mf new file mode 100644 index 00000000000..e29ff8f1286 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/ogham/ogham.mf @@ -0,0 +1,155 @@ +% ogham.mf +% This font was designed by Alan M Stanier ( alan@essex.ac.uk ), +% at Essex University Computer Service, Colchester, Essex CO4 3EA. England. +% +% Maintenance now overseen by Robin Fairbairns of Cambridge University. +% (search on the web for my email address) +% +% Alan Stanier asked that if you make significant additions +% or improvements to the font, you should send him an updated version; +% if you send it to CTAN as a contribution, and mark it for my attention, +% I shall see that it is installed, and ensure that Alan has a copy. +% +% The font is released into the public domain. +% +% +% The OGHAM alphabet is found on a number of Irish and Pictish +% carvings dated from the 4th century AD. +% The characters touch or cross the edges of the stone. +% +% There are 20 characters in the alphabet, representing: +% +% a o u e i +% b l v s n +% h d t c q +% m g ng z r +% +% I have coded ng as 'j'. +% +% Each character is given in lower case (as carved on vertical edges) +% and upper case (as carved on horizontal edges). +% +mg#:=.4pt#; % a unit length, not a magnification. + +mode_setup; +font_size 10pt#; + +pensize#:=1.25*mg#; +bigpensize#:=2.0*mg#; +height#:=15pt#; +bigheight#:=20pt#; +define_pixels(mg); +define_blacker_pixels(pensize,bigpensize); + +def getpen = pickup pencircle scaled pensize enddef; +def getbigpen = pickup pencircle scaled bigpensize enddef; + +def top = + getbigpen; + draw (-5*mg,15*mg) -- (40*mg,15*mg); + getpen; +enddef; + +def bigtop = + getbigpen; + draw (-5,15*mg) -- (50*mg,15*mg); + getpen; +enddef; + +def edge = + getbigpen; + draw (15*mg,0) -- (15*mg,30*mg); + getpen; +enddef; + +def bigedge = + getbigpen; + draw (15*mg,0) -- (15*mg,40*mg); + getpen; +enddef; + +def full(expr n) = + edge; + for i = 1 upto n: draw (0,5*i*mg) -- (30*mg,5*i*mg); endfor +enddef; + +def lineright(expr n) = + edge; + for i = 1 upto n: draw (15*mg,5*i*mg) -- (30*mg,5*i*mg); endfor +enddef; + +def lineleft(expr n) = + edge; + for i = 1 upto n: draw (0,5*i*mg) -- (15*mg,5*i*mg); endfor +enddef; + +def slope(expr n) = + bigedge; + for i = 1 upto n: draw (0,(6*i+16)*mg) -- (30*mg,6*(i-1)*mg); endfor +enddef; + +def across(expr n) = + top; + for i = 1 upto n: draw (5*i*mg,0) -- (5*i*mg,30*mg); endfor +enddef; + +def lineup(expr n) = + top; + for i = 1 upto n: draw (5*i*mg,15*mg) -- (5*i*mg,30*mg); endfor +enddef; + +def linedown(expr n) = + top; + for i = 1 upto n: draw (5*i*mg,0) -- (5*i*mg,15*mg); endfor +enddef; + +def lean(expr n) = + bigtop; + for i = 1 upto n: draw (6*(i-1)*mg,0) -- ((6*i+16)*mg,30*mg); endfor +enddef; + +beginchar("a",height#,height#,0); full(1); endchar; +beginchar("A",height#,height#,0); across(1); endchar; +beginchar("o",height#,height#,0); full(2); endchar; +beginchar("O",height#,height#,0); across(2); endchar; +beginchar("u",height#,height#,0); full(3); endchar; +beginchar("U",height#,height#,0); across(3); endchar; +beginchar("e",height#,height#,0); full(4); endchar; +beginchar("E",height#,height#,0); across(4); endchar; +beginchar("i",height#,height#,0); full(5); endchar; +beginchar("I",height#,height#,0); across(5); endchar; + +beginchar("b",height#,height#,0); lineright(1); endchar; +beginchar("B",height#,height#,0); linedown(1); endchar; +beginchar("l",height#,height#,0); lineright(2); endchar; +beginchar("L",height#,height#,0); linedown(2); endchar; +beginchar("v",height#,height#,0); lineright(3); endchar; +beginchar("V",height#,height#,0); linedown(3); endchar; +beginchar("s",height#,height#,0); lineright(4); endchar; +beginchar("S",height#,height#,0); linedown(4); endchar; +beginchar("n",height#,height#,0); lineright(5); endchar; +beginchar("N",height#,height#,0); linedown(5); endchar; + +beginchar("h",height#,height#,0); lineleft(1); endchar; +beginchar("H",height#,height#,0); lineup(1); endchar; +beginchar("d",height#,height#,0); lineleft(2); endchar; +beginchar("D",height#,height#,0); lineup(2); endchar; +beginchar("t",height#,height#,0); lineleft(3); endchar; +beginchar("T",height#,height#,0); lineup(3); endchar; +beginchar("c",height#,height#,0); lineleft(4); endchar; +beginchar("C",height#,height#,0); lineup(4); endchar; +beginchar("q",height#,height#,0); lineleft(5); endchar; +beginchar("Q",height#,height#,0); lineup(5); endchar; + +beginchar("m",height#,bigheight#,0); slope(1); endchar; +beginchar("M",bigheight#,height#,0); lean(1); endchar; +beginchar("g",height#,bigheight#,0); slope(2); endchar; +beginchar("G",bigheight#,height#,0); lean(2); endchar; +beginchar("j",height#,bigheight#,0); slope(3); endchar; +beginchar("J",bigheight#,height#,0); lean(3); endchar; +beginchar("z",height#,bigheight#,0); slope(4); endchar; +beginchar("Z",bigheight#,height#,0); lean(4); endchar; +beginchar("r",height#,bigheight#,0); slope(5); endchar; +beginchar("R",bigheight#,height#,0); lean(5); endchar; + +end |