diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/tengwar')
14 files changed, 1188 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/tengwar/accents.mf b/Master/texmf-dist/fonts/source/public/tengwar/accents.mf new file mode 100644 index 00000000000..b93d38add4a --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/accents.mf @@ -0,0 +1,223 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)accents.mf 1.1 10/1/86 + +def centerpt= + (w-((w-leadgap)/2), xht+3.2thin) +enddef; + +beginchar (19, shortwidth, cap#, 0); "The acute accent (e)"; + begingroup; + save x,y; + pickup elvishpen; + z0 = centerpt; + top y1=h; %z1-z0=whatever*(dir tilt); + rt x1 = w; + draw z0--z1; + endgroup; +endchar; + +beginchar ("}", shortwidth, cap#, 0); "The double acute accent (e')"; + begingroup; + save x,y; + pickup elvishpen; + z0 = centerpt; + top y1=h; %z1-z0=whatever*(dir tilt); + rt x1 = w; + draw z0--z1; + draw ((z0--z1) shifted (2.5*thin*right)); + endgroup; +endchar; + + +beginchar ("_", shortwidth, cap#, 0); "The dot-above accent (i)"; + begingroup; + save x,y; + pickup pensquare scaled thick rotated 45; + z0 = centerpt; + drawdot z0; + endgroup; +endchar; + +beginchar (127, shortwidth, cap#, 0); "The umlaut accent (double i)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z0 = centerpt; + z1 = z0 + thick*left; + z2 = z0 + thick*right; + drawdot z1; drawdot z2; + endgroup; +endchar; + +beginchar (25, shortwidth, 0, -6thin#); "The schwa accent (dot below)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z0 = centerpt; + x1 = x0; + y1 = -3thin; + drawdot z1; + endgroup; +endchar; + +beginchar (24, shortwidth, 0, -6thin#); "The 'y' accent (two dots below)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z0 = centerpt; + x1 = x0 - thick; + x2 = x0 + thick; + y1 = y2 = -3thin; + drawdot z1; drawdot z2; + endgroup; +endchar; + +beginchar ("^", shortwidth, cap#, 0); "The circumflex (3-dot 'a')"; + begingroup; + save x,y; + pickup elvishpen; + + agap := w/6; + alength := 1.5*thick; + + z0 = centerpt; + + z1 = z0 + agap*left; + z2=z1+alength*(dir (tilt+90)); + + z3 = z0 + agap*up; + z4 = z3 + alength*up; + + z5 = z0 + agap*right; + z6 = z5 + alength*(dir tilt); + + draw z1--z2; draw z3--z4; draw z5--z6; + endgroup; +endchar; + +beginchar (20, shortwidth, cap#, 0); "The right-loop accent (o)"; + begingroup; + save x,y, rightcurl; + path rightcurl; + pickup elvishpen; + z0 = centerpt; + top y1=h; x1 = .7[x0, w]; + rt x2=w; y2 = .7[y0, h]; + x3 = .8[x0,w]; y1-y2 = y2-y3; + rightcurl = (z0..tension 2.0..z1{right}..z2..z3); + draw rightcurl; + endgroup; +endchar; + +beginchar (22, shortwidth, cap#, 0); "The double right-loop accent (o')"; + begingroup; + save x,y, rightcurl; + path rightcurl; + pickup elvishpen; + z0 = centerpt; + top y1=h; x1 = .7[x0, w]; + rt x2=w; y2 = .7[y0, h]; + x3 = .8[x0,w]; y1-y2 = y2-y3; + rightcurl = (z0..tension 2.0..z1{right}..z2..z3); + draw rightcurl; + draw (rightcurl shifted (3*thin,0)); + endgroup; +endchar; + +beginchar (21, shortwidth, cap#, 0); "The left-loop accent (u)"; + begingroup; + save x,y; + pickup elvishpen; + z0 = centerpt; + lft x1 = 1/3[leadgap, x0]; top y1 = 3/4[y0,h]; + top y2 = h; x2 = x0; + y3 = y1; x3-x0 = x0-x1; + draw z1..z2{right}..z0{down}; + endgroup; +endchar; +beginchar (23, shortwidth, cap#, 0); "The left-loop accent (u)"; + begingroup; + save x,y, leftcurl; + path leftcurl; + pickup elvishpen; + z0 = centerpt; + lft x1 = 1/3[leadgap, x0]; top y1 = 3/4[y0,h]; + top y2 = h; x2 = x0; + y3 = y1; x3-x0 = x0-x1; + leftcurl = (z1..z2{right}..z0{down}); + draw leftcurl; + draw leftcurl shifted ((x1-x0)*right); + endgroup; +endchar; + +beginchar (28, .7shortwidth, 0, .8dep#); "S-hook"; + begingroup; + save x, y; + pickup elvishpen rotated 90; + x0 = leadgap; y0=0; + rt x1=w; y1=.7[y0,-d]; + x2=.5[x0,x1]; y2=-d; + x3=x0+thin; y3=y1; + draw z0..tension 2.0..z1{down}..z2..z3{up}; + endgroup; +endchar; + +beginchar (30, shortwidth, .5[xht#,cap#], 0); "Beleriandic W"; + begingroup; + save x,y; + pickup elvishpen; + x0=w-((w-leadgap)/2); y0=h; + lft x2=leadgap/2; top y1=y0+thick; z1=z2+whatever*(dir tilt); + y2=y3=y0; + rt x3=w-leadgap/2; + bot y4=y3-thick; z4=z3-whatever*(dir tilt); + draw z1.. z2..z0{right}.. z3..z4; + endgroup; +oldendchar; + + +beginchar (8, shortwidth, 0, .4xht#); "Short bottom bar"; + begingroup; + save x,y; + pickup elvishpen; + lft x0 = leadgap; rt x1 = w; + y0=y1=-d; + draw z0--z1; + endgroup; +endchar; + +beginchar (9, 1em#, 0, .4xht#); "Long bottom bar"; + begingroup; + save x,y; + pickup elvishpen; + lft x0 = leadgap; rt x1 = w; + y0=y1=-d; + draw z0--z1; + endgroup; +endchar; + +beginchar (10, shortwidth, .4[xht#,cap#], 0); "Short top bar"; + begingroup; + save x,y; + pickup elvishpen; + lft x0 = leadgap; rt x1 = w; + y0=y1=h; + draw z0--z1; + endgroup; +oldendchar; +beginchar (11, 1em#, .4[xht#,cap#], 0); "Long top bar"; + begingroup; + save x,y; + pickup elvishpen; + lft x0 = leadgap; rt x1 = w; + y0=y1=h; + draw z0--z1; + endgroup; +oldendchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/additionals.mf b/Master/texmf-dist/fonts/source/public/tengwar/additionals.mf new file mode 100644 index 00000000000..29e1b313d17 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/additionals.mf @@ -0,0 +1,203 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)additionals.mf 1.1 10/1/86 + +def commonr= + pickup elvishpen; + save x,y,sweep; + path sweep; + lft x0 = leadgap; top y0 = h; + lft x1 = 0; z0-z1 = whatever*(dir tilt); + x2 = .75w; top y2=h; + rt x3 = w; y3 = .5h; + lft x4 = leadgap; y4 = -.65d; + x5 = .5w; y5 = -d; + x6 = .85w; z6-z5 = whatever*(dir tilt); + sweep = (z2..z3{down}..z4{down}..z5{right}..z6); + z7 = sweep intersectionpoint + ((-infinity,0)--(infinity,0)); + draw sweep; + draw z1--z0..z7; +enddef; + +beginchar("r", shortwidth, xht#, dep#); "The letter r (romen)"; + begingroup; + commonr; + endgroup; +endchar; +beginchar(18, shortwidth, xht#, dep#); "The ligature rh (arda)"; + begingroup; + commonr; + z8 = point .5 of (z0..z7); + x9 = x1; + z8-z9 = whatever*(dir tilt); + x10 = x0; y10=y9; + draw z8--z9..tension 3.0..z10{dir tilt}; + endgroup; +endchar; + +def commonl= + save x,y; + pickup elvishpen; + path tilde; + + lft x1=leadgap;top y1=h; + rt x4 = w; y4=h; + y2-y1 = y4-y3 = 3(y4-y1); + z2-z1=z4-z3=whatever*(dir tilt); + tilde = ( z1..controls z2 and z3..z4); % straight from Page 152 of MFbook + z5 = point .6 of tilde; + lft x6 = leadgap+1/20em; y6 = -.25d; + x7 = .5[leadgap, w]; bot y7=-d; + rt x8 = w-leadgap; y8 = 0; + y9=.25h; z9-z8=whatever*(dir (tilt+90)); + draw tilde; + z10 = point .6 of (z5..z6{down}); +enddef; +beginchar("l", .8em#, xht#, dep#); "The letter l (lambe)"; + begingroup; + commonl; + draw z5..z6{down}..z7{right}..z8..z9; + endgroup; +endchar; + +beginchar("L", .8em#, xht#, dep#); "The ligature ld (alda)"; + begingroup; + commonl; + draw z5..tension 1.5..z10..z9..z8..z7..z6; + endgroup; +endchar; + +def commonsz= + pickup elvishpen; + save x,y,spath; + path spath,zspath,zpath; + x0 =.9w; top y0=height; + x0-x1 = .08w; z0-z1=whatever*(dir(tilt-10)); + y3=xht/2; lft x3=leadgap; + x4 = w/2+leadgap; bot y4=0; + rt x5 = w; y5 = xht/2; %z5-z4 = whatever*(dir tilt); + z6-z5=whatever*(dir (tilt+90)); + x6=x5-.3w; + spath=(z0..z1..tension 2.2..z3{down}..z4{right}..z5{up}..z6{dir(tilt+90)}); + zspath=(z0..z1..tension 2.2..z3{down}..z4{right}..z5); + x7=x3; y7= -.6d; + x8=x4; bot y8=-d; + x9=x5; y9= -.6d; + z10-z9= z6-z5; + zpath=(z4..tension 2.2..z7{down}..z8{right}..z9{up}..z10{dir(tilt+90)}); +enddef; +beginchar("s", shortwidth, cap#, 0); "The letter s (silme)"; + begingroup; + save height; + height=h; + commonsz; + draw spath; + endgroup; +endchar; + +beginchar(3, shortwidth, xht#, dep#); "The letter s reversed (silme nuquerna)"; + begingroup; + save height; + height=cap; + commonsz; + draw (spath rotatedabout ( (.5[leadgap,w],xht/2), 180)); + endgroup; +endchar; + +beginchar ("z", shortwidth, cap#, dep#); "The letter z (aze)"; + begingroup; + save height; height=h; + commonsz; + draw zspath; + draw zpath; + endgroup; +endchar; + +beginchar (26, shortwidth, cap#, dep#); "The letter z reversed (aze nuquerna)"; + + begingroup; + save height; height=cap; + commonsz; + draw (zspath rotatedabout ( (.5[leadgap,w],0), 180)); + draw (zpath rotatedabout ( (.5[leadgap,w],0), 180)); + endgroup; +endchar; + +beginchar("e", shortwidth, xht#, 0); "The letter e (yanta)"; + begingroup; + save x,y; + pickup elvishpen; + top y0 = h; x0=.5[0, w]; + lft x1 = 0; y1=0; + y2=0; rt x2=w; + y3=y0; x3=x0-.7thick; + z4-z1 = whatever*(z0-z2); + x1-x4=.2thin; + z6-z2 = whatever*(z0-z1); + x6=w; + draw z3..z0--z2..z6; + draw z4..z1--z0; + endgroup; +endchar; + +beginchar("h", shortwidth, cap#, 0); "The letter h (hyarmen)"; + begingroup; + save x,y; + pickup elvishpen; + top y0 = h; x0=leadgap; + lft x1 = leadgap+.3thick; y1=0; + y2=0; rt x2=w; + y3=y0; x3=x0-.7thick; + z4-z1 = whatever*(z0-z2); + x1-x4=.2thin; + z5 = point .5 of (z0--z2); + z6-z2 = whatever*(z5-z1); + x6=w; + draw z3..z0--z2..z6; + draw z4..z1--z5; + endgroup; +% +% This character requires a bit more height than the others so that +% accents get raised enough. +% + charht := .3[xht#,cap#]; +oldendchar; + +beginchar ("u", shortwidth, xht#, 0); "The letter u (ure)"; + begingroup; + save x,y; + pickup elvishpen; + lft x0 = leadgap; + top y1 = h; + rt x2 = w; + bot y3 = 0; + y0 = .65h; x1 = leadgap+.35w; + y2 = .35h; x3 = leadgap+.65w; + draw z0..z1..z2..z3..cycle; + endgroup; +endchar; + + +beginchar (15, shortwidth+thick#, cap#,0); "The ligature hw (hwesta sindarinwa)"; + begingroup; + save x,y; + pickup elvishpen; + nutelco(w-thick, longstem, stemdepth) + z7=bowpoint; + bot y8 = 0; x8=1/2[x7,leadgap]; + lft x9 = leadgap; y9=1/2xht; + top y10 = xht; x10=x8; + draw z7{down}..z8{left}..z9{up}..z10{right}..cycle; + rt x11 = w-thick; y11 = 0; + z12= (w, 0); + draw z11--z12; + endgroup; +endchar; + diff --git a/Master/texmf-dist/fonts/source/public/tengwar/calmatema.mf b/Master/texmf-dist/fonts/source/public/tengwar/calmatema.mf new file mode 100644 index 00000000000..22c7648a88a --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/calmatema.mf @@ -0,0 +1,49 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)calmatema.mf 1.1 10/1/86 + + +beginchar("C", shortwidth,xht#,dep#); "The ligature CH (calma)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint, 0, true); +endchar; + +beginchar("j", 1em#,xht#,dep#); "The letter j (anga)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, true); + nuluva (bowpoint, leadgap, true); +endchar; + +beginchar("S", shortwidth,cap#,0); "The ligature SH (harma)"; + pickup elvishpen; + nutelco(w,longstem, stemdepth); + nuluva (bowpoint, leadgap, true); +endchar; + +beginchar("Z", 1em#,cap#,0); "The ligature ZH (anca)"; + pickup elvishpen; + nutelco(w,longstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, true); + nuluva (bowpoint, leadgap, true); +endchar; + +beginchar("O", shortwidth,xht#,0); "The letter o (anna)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint, leadgap, true); +endchar; + +beginchar("Y", 1em#,xht#,0); "The ligature ny (ngoldo)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, true); + nuluva (bowpoint, leadgap, true); +endchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/carriers.mf b/Master/texmf-dist/fonts/source/public/tengwar/carriers.mf new file mode 100644 index 00000000000..cc0b6b30204 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/carriers.mf @@ -0,0 +1,43 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)carriers.mf 1.1 10/1/86 + +def commoncarrier= + pickup elvishpen; + x0=x1-thick; top y0=h; + x1=1/2[leadgap,w]; y1=y0; + x2=x1; y2=-d/2; + x3=x0; y3=-d; + draw z0--z1{down}..z2{down}..z3; +enddef; + +beginchar ("i",3*leadgap#,xht#,.2dep#); "Short carrier"; + begingroup; + save x,y; + commoncarrier; + endgroup; +endchar; + +beginchar (16,3*leadgap#,xht#,dep#); "Long carrier"; + begingroup; + save x,y; + commoncarrier; + endgroup; +endchar; + +beginchar (17,3*leadgap#,cap#,0); "Carrier Halla"; + begingroup; + save x,y; + pickup elvishpen; + x0=x1-thick/3; top y0=h; + x1=1/2[leadgap,w]; y1=y0; + x2=x1; y2=-d; + draw z0--z1{down}..z2; + endgroup; +endchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/fullvowels.mf b/Master/texmf-dist/fonts/source/public/tengwar/fullvowels.mf new file mode 100644 index 00000000000..d3db6dcf7c5 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/fullvowels.mf @@ -0,0 +1,42 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)fullvowels.mf 1.1 10/1/86 + +beginchar ("a",shortwidth, xht#, 0); "The letter a (modus beleriandi)"; + begingroup; + save x,y; + pickup elvishpen; + top y1= h; x1 = .75[leadgap, w]; + lft x2= leadgap; y2= .4h; + bot y3= 0; x3= .5[leadgap, w]; + y4= .2h; rt x4=w; + draw z1..z2{down}..z3{right}..z4; + endgroup; +endchar; + +beginchar ("y", shortwidth, xht#, 1/2dep#); "The letter y (modus beleriandi)"; + begingroup; + save x,y; + pickup elvishpen; + x1=leadgap; y1=.5h; + x2 = 2/3[x1,w]; top y2=h; + rt x3=w; y3=0; + lft x4=leadgap; y4=-d; + draw z1..z2{right}..z3..z4; + endgroup; +endchar; + + +beginchar("o", shortwidth,xht#,0); "The letter o (anna ar taith)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint, leadgap, true); + draw barpoint..barpoint+3thin*right; +endchar; + diff --git a/Master/texmf-dist/fonts/source/public/tengwar/ligtable.mf b/Master/texmf-dist/fonts/source/public/tengwar/ligtable.mf new file mode 100644 index 00000000000..dc258c00d0a --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/ligtable.mf @@ -0,0 +1,17 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)ligtable.mf 1.1 10/1/86 + +ligtable "t": "h" =: "T"; +ligtable "d": "h" =: "D"; +ligtable "c": "h" =: "C"; +ligtable "s": "h" =: "S"; +ligtable "n": "g" =: "N"; +ligtable "h": "w" =: oct"027"; + diff --git a/Master/texmf-dist/fonts/source/public/tengwar/numerals.mf b/Master/texmf-dist/fonts/source/public/tengwar/numerals.mf new file mode 100644 index 00000000000..fbd4992b2ee --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/numerals.mf @@ -0,0 +1,197 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)numerals.mf 1.1 10/1/86 + +def firstbow(expr start,finish,looped) = + begingroup; + save x,y,t; + x0 = start; top y0=xht; + x1 = x0; bot y1=0; + x2=finish; bot y2=0; + if looped: + t=1.0; + else: + t=1.0; + fi; + draw z0{down}..z1..tension t..z2; + bowpoint:=z1; + penlabels (0,1,2); + endgroup; +enddef; + +def secondstem(expr start, finishpoint) = + begingroup; + save x,y, stem; + path stem; + z0=(start, h); + z1 = z0 + serifthick*left; + z2 = z0 + serifthick*right; + z3= (start, 0); + x4 = 1/2[x3, (xpart finishpoint)]; y4 = -d; + draw z1--z0;%--z2; + stem = ( z0..z3{down}..z4..tension 1.2..finishpoint); + draw stem; + top y5 = xht; + barpoint := stem intersectionpoint + ((-infinity,y5)--(infinity, y5)); + penlabels (0,1,2,3,4); + + endgroup; +enddef; + + +def thirdstem(expr start)= + begingroup; + save x,y,stem; + path stem; + z0=(start, h); + z1 = z0 + serifthick*left; + z2 = z0 + serifthick*right; + z3= (start, 0); + x4 = .5[0,start]; y4 = -d; + x5=0; y5 = 1/2 (-d); + draw z1--z0;%--z2; + stem = ( z0..z3{down}..z4..z5); + draw stem; + bowpoint := stem intersectionpoint + ((-infinity,bowstart)--(infinity, bowstart)); + barpoint := stem intersectionpoint + ((-infinity,0)--(infinity, 0)); + penlabels (0,1,2,3,4,5); + endgroup; +enddef; + + +beginchar ("0", shortwidth, xht#, 1/2dep#); "The numeral 0"; + begingroup; + save x,y; + pickup elvishpen; + lft x1=leadgap; y1=.5h; + x2 = 1/2[x1,w]; top y2=h; + rt x3=w; y3=0; + x4=leadgap; y4=-d; + draw z1..z2{right}..z3{down}..z4; + endgroup; +endchar; + +beginchar ("1", shortwidth, xht#, 0); "The numeral 1"; + begingroup; + save x, y; + pickup elvishpen; + + firstbow(leadgap, w-thick, true); + top y10=h; + barpoint:=(w,y10); + overbar; + endgroup; +endchar; + +beginchar ("2", .75em#, xht#, 0); "The numeral 2"; + begingroup; + save x, y; + pickup elvishpen; + + firstbow (1/2[leadgap,w], w-thick, true); + firstbow (leadgap, xpart bowpoint, false); + top y10=h; + barpoint:=(w,y10); + overbar; + endgroup; +endchar; + +beginchar ("3", 1em#, xht#, 0); "The numeral 3"; + begingroup; + save x, y; + pickup elvishpen; + + firstbow (2/3[leadgap,w], w-thick, true); + firstbow (1/3[leadgap,w], xpart bowpoint, false); + firstbow (leadgap, xpart bowpoint, false); + top y10=h; + barpoint:=(w,y10); + overbar; + endgroup; +endchar; + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +beginchar ("4", shortwidth, 3/4[xht#,cap#], 3/4xht#); "The numeral 4"; + begingroup; + save x, y; + pickup elvishpen; + + rt x0 = w; y0 = -d/3; + secondstem (leadgap, z0); + endgroup; +endchar; + +beginchar ("5", .75em#, 3/4[xht#, cap#], 3/4xht#); "The numeral 5"; + begingroup; + save x, y; + pickup elvishpen; + + firstbow (1/2[leadgap,w], w-thick, true); + secondstem (leadgap, bowpoint); + top y10=xht; + draw barpoint--(w,y10); + endgroup; +endchar; + +beginchar ("6", 1em#, 3/4[xht#, cap#], 3/4xht#); "The numeral 6"; + begingroup; + save x, y; + pickup elvishpen; + + firstbow (2/3[leadgap,w], w-thick, true); + firstbow (1/3[leadgap,w], xpart bowpoint, false); + secondstem (leadgap, bowpoint); + top y10=xht; + draw barpoint--(w,y10); + endgroup; +endchar; +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +thirdwidth := 2.5*leadgap; + +beginchar ("7", 3*leadgap#, 3/4[xht#, cap#], 3/4xht#); "The numeral 7"; + begingroup; + save x, y; + pickup elvishpen; + + thirdstem (thirdwidth); + endgroup; +endchar; + + +beginchar ("8", .75em#, 3/4[xht#, cap#], 3/4xht#); "The numeral 8"; + begingroup; + save x, y; + pickup elvishpen; + + thirdstem (thirdwidth); + luva (bowpoint, w, false); + underbar; + endgroup; +endchar; + + +beginchar ("9", 1em#, 3/4[xht#, cap#], 3/4xht#); "The numeral 9"; + begingroup; + save x, y; + pickup elvishpen; + + thirdstem (thirdwidth); + luva (bowpoint, 1/2[thirdwidth,w], false); + luva (bowpoint, w, false); + underbar; + endgroup; +endchar; + + + diff --git a/Master/texmf-dist/fonts/source/public/tengwar/parmatema.mf b/Master/texmf-dist/fonts/source/public/tengwar/parmatema.mf new file mode 100644 index 00000000000..03b2819faa7 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/parmatema.mf @@ -0,0 +1,68 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)parmatema.mf 1.1 10/1/86 + +beginchar("p", shortwidth,xht#,dep#); "The letter p (parma)"; + pickup elvishpen; + telco(leadgap,shortstem, stemdepth); + luva (bowpoint, w, false); + underbar; +endchar; + +beginchar("b", 1em#,xht#,dep#); "The letter b (umbar)"; + pickup elvishpen; + telco(leadgap,shortstem, stemdepth); + luva (bowpoint, bowsize*em, false); + luva (bowpoint, w, false); + underbar; +endchar; + + +beginchar("f", shortwidth, cap#, 0); "the letter f (formen)"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, w, false); + underbar; +endchar; + +beginchar("v", 1em#, cap#, 0); "the letter v (ampa)"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, bowsize*em, false); + luva (bowpoint, w, false); + underbar; +endchar; + + +beginchar (14, 1em#, cap#, dep#); "the word 'OF'"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, bowsize*em, false); + luva (bowpoint, w, false); + underbar; +endchar; + +% +% Should also be a related "of the" glyph +% + +beginchar ("w", shortwidth, xht#, 0); "the letter w (vala)"; + pickup elvishpen; + telco (leadgap, shortstem, stemdepth); + luva (bowpoint, w, false); + underbar; +endchar; + +beginchar ("m", 1em#, xht#, 0); "the letter m (malta)"; + pickup elvishpen; + telco(leadgap, shortstem, stemdepth); + luva (bowpoint, bowsize*em, false); + luva (bowpoint, w, false); + underbar; +endchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/punctuation.mf b/Master/texmf-dist/fonts/source/public/tengwar/punctuation.mf new file mode 100644 index 00000000000..b63c5a4e910 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/punctuation.mf @@ -0,0 +1,86 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)punctuation.mf 1.1 10/1/86 + +beginchar (",", 3*leadgap#, xht#, 0); "The punctuation comma (one dot)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z1 = (1/2w, h/2); + drawdot z1; + endgroup; +endchar; + +beginchar (";", 2*leadgap#, xht#, 0); "The punctuation semicolon (two dots)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z1 = (w/2, h-2thin); + z2 = (w/2, 2thin); + drawdot z1; + drawdot z2; + endgroup; +endchar; + +beginchar (".", 3*leadgap#, xht#, 0); "The punctuation period (four dots)"; + begingroup; + save x, y; + pickup pensquare scaled thick rotated 45; + z1 = (w/3, h-2thin); + z2 = (w/3, 2thin); + z3 = (w, h-2thin); + z4 = (w, 2thin); + drawdot z1; + drawdot z2; + drawdot z3; + drawdot z4; + endgroup; +endchar; + +beginchar ("!", .7shortwidth, cap#, 0); "The exclamation point"; + begingroup; + save x, y; + pickup elvishpen; + rt x1 = w; top y1=h; + y2 = y3 = h/2; + z1-z2 = z3-z4 = whatever*(dir 40); + x4 = leadgap; %bot y4=0; + draw z1..controls z2 and z3..z4; + endgroup; +endchar; + +beginchar ("?", .7shortwidth, cap#, 0); "The question mark"; + begingroup; + save x, y; + pickup elvishpen; + telco (leadgap, longstem, stemdepth); + z1 = bowpoint; + top y2 = xht; x2 = .6[leadgap, w]; + rt x3 = w; y3 = .7xht; + lft x4 = leadgap; bot y4 = 0; + draw z1..tension 2.0..z2..z3..z4; + z6-z5 = z2-z1; + top y6 = h; x6 = x2; + z7-z6 = z3-z2; + draw z5..tension 2.0..z6..z7..tension 1.5..z1; + endgroup; +endchar; + +beginchar ("-", shortwidth, xht#, 0); "The dash (tilde)"; + begingroup; + save x, y; + pickup elvishpen; + x1 = leadgap; + x4 = w; + y1 = .4h; y4 = .6h; + z2-z1 = z4-z3 = whatever*(dir tilt); + y2-y1 = 3 (y4-y1); + draw z1..controls z2 and z3..z4; + endgroup; +endchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/quessetema.mf b/Master/texmf-dist/fonts/source/public/tengwar/quessetema.mf new file mode 100644 index 00000000000..ee6c40d3be1 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/quessetema.mf @@ -0,0 +1,57 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)quessetema.mf 1.1 10/1/86 + +beginchar("k", shortwidth,xht#,dep#); "The letter k (quesse)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint, 0, false); + overbar; +endchar; + +beginchar("g", 1em#,xht#,dep#); "The letter g (ungwe)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, false); + nuluva (bowpoint, leadgap, false); + overbar; +endchar; + +beginchar("K", shortwidth,cap#,0); "The ligature KH (hwesta)"; + pickup elvishpen; + nutelco(w,longstem, stemdepth); + nuluva (bowpoint, leadgap, false); + overbar; +endchar; + +beginchar("G", 1em#,cap#,0); "The ligature GH (unque)"; + pickup elvishpen; + nutelco(w,longstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, false); + nuluva (bowpoint, leadgap, false); + overbar; +endchar; + + +beginchar("A", shortwidth,xht#,0); "The letter A (Vilya)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint, leadgap, false); + overbar; +endchar; + + +beginchar("N", 1em#,xht#,0); "The ligature NG (Ngwalme)"; + pickup elvishpen; + nutelco(w,shortstem, stemdepth); + nuluva (bowpoint,w-bowsize*em+leadgap, false); + nuluva (bowpoint, leadgap, false); + overbar; +endchar; + diff --git a/Master/texmf-dist/fonts/source/public/tengwar/tengwar.mf b/Master/texmf-dist/fonts/source/public/tengwar/tengwar.mf new file mode 100644 index 00000000000..9b0f7ae7574 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/tengwar.mf @@ -0,0 +1,58 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)tengwar.mf 1.1 10/1/86 + +mode_setup; +em#:=10pt#; cap#=.8em#; dep#=.4em#; xht#=.4em#; +shortwidth := .6em#; + +thick#:=9/80em#; thin#:=3/80em#; +leadgap# := .1em#; +bowstart#= .66xht#; +serifthick# := 1.1thick#; + +tilt:=50; seriftilt := 110; botseriftilt:=80; +shortstem := .7; +longstem := .85; +stemdepth := .9; +bowsize := .58; + +define_pixels(em,cap,dep,xht,bowstart); +define_pixels(thin,thick,serifthick,leadgap); + +pen elvishpen; elvishpen = pencircle xscaled thick yscaled thin rotated tilt; + +% +% Because even "tall" characters want to be accented in the same place, +% but because we want to use "h" in "beginchar" definitions +% in a typical plain-MF way, +% we force all characters to have a character height of xht#. This is +% something a kludge, and makes tall characters stick into preceding lines +% when the baselines are not sufficiently separated. But that iss how the +% title-page inscription looks anyway. +% +let oldendchar = endchar; +def endchar= + charht := xht#; + oldendchar; +enddef; + +input tiw; + +font_normal_space .45em#; +font_normal_stretch .22em#; +font_normal_shrink .15em#; +font_x_height xht#; +font_quad 1em#; +font_extra_space 1/6em#; +designsize:=1em#; + +input ligtable; + +bye; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/tengwarweird.mf b/Master/texmf-dist/fonts/source/public/tengwar/tengwarweird.mf new file mode 100644 index 00000000000..42f439852a1 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/tengwarweird.mf @@ -0,0 +1,62 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)tengwar.mf 1.1 10/1/86 + +mode_setup; +slant := sind 10/cosd 10; +currenttransform := identity slanted slant; +em#:=10pt#; cap#=.7em#; dep#=.4em#; xht#=.4em#; +shortwidth := .4em#; + +slant:=sind 12/cosd 12; +thick#:=2/80em#; thin#:=1/150em#; +leadgap# := .08em#; +bowstart#= .9xht#; +serifthick# := .01pt#; + +tilt:=45; seriftilt := 45; botseriftilt:=45; +shortstem := .6; +longstem := .95; +stemdepth := .9; +bowsize := .5; + +define_pixels(em,cap,dep,xht,bowstart); +define_pixels(thin,thick,serifthick,leadgap); + +pen elvishpen; elvishpen = pensquare xscaled thick yscaled thin rotated tilt; + +% +% Because even "tall" characters want to be accented in the same place, +% but because we want to use "h" in "beginchar" definitions +% in a typical plain-MF way, +% we force all characters to have a character height of xht#. This is +% something a kludge, and makes tall characters stick into preceding lines +% when the baselines are not sufficiently separated. But that iss how the +% title-page inscription looks anyway. +% +let oldendchar = endchar; +def endchar= + charht := xht#; + oldendchar; +enddef; + +input tiw; + +font_normal_space .45em#; +font_normal_stretch .22em#; +font_normal_shrink .15em#; +font_slant slant; +font_x_height xht#; +font_quad 1em#; +font_extra_space 1/6em#; +designsize:=1em#; + +input ligtable; + +bye; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/tincotema.mf b/Master/texmf-dist/fonts/source/public/tengwar/tincotema.mf new file mode 100644 index 00000000000..2692b53e540 --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/tincotema.mf @@ -0,0 +1,55 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)tincotema.mf 1.1 10/1/86 + +beginchar("t", shortwidth,xht#,dep#); "The letter t (tinco)"; + pickup elvishpen; + telco(leadgap,shortstem, stemdepth); + luva (bowpoint, w, true); +endchar; + +beginchar("d", 1em#,xht#,dep#); "The letter d (ando)"; + pickup elvishpen; + telco(leadgap,shortstem, stemdepth); + luva (bowpoint, bowsize*em, true); + luva (bowpoint, w, true); +endchar; + +beginchar("T", shortwidth, cap#, 0); "the ligature th (thule)"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, w, true); +endchar; + +beginchar("D", 1em#, cap#, 0); "the ligature dh (anto)"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, bowsize*em, true); + luva (bowpoint, w, true); +endchar; + +beginchar (004, 1em#, cap#, dep#); "the word 'THE'"; + pickup elvishpen; + telco(leadgap, longstem, stemdepth); + luva (bowpoint, bowsize*em, true); + luva (bowpoint, w, true); +endchar; + +beginchar ("R", shortwidth, xht#, 0); "the weak letter R (ore)"; + pickup elvishpen; + telco (leadgap, shortstem, stemdepth); + luva (bowpoint, w, true); +endchar; + +beginchar ("n", 1em#, xht#, 0); "the letter n (numen)"; + pickup elvishpen; + telco(leadgap, shortstem, stemdepth); + luva (bowpoint, bowsize*em, true); + luva (bowpoint, w, true); +endchar; diff --git a/Master/texmf-dist/fonts/source/public/tengwar/tiw.mf b/Master/texmf-dist/fonts/source/public/tengwar/tiw.mf new file mode 100644 index 00000000000..c71bf61bc0f --- /dev/null +++ b/Master/texmf-dist/fonts/source/public/tengwar/tiw.mf @@ -0,0 +1,28 @@ +% Copyright 1988 Michael Urban +% Everyone is granted permission to copy, modify and redistribute +% this file, provided that a currently-dated copy of this +% copyright notice is included in the copy. +% License is granted to produce fonts based on the information +% in this file, provided that such fonts are redistributed +% without charge to any third party. + +% SCCS ID @(#)tiw.mf 1.1 10/1/86 + +pair bowpoint, barpoint, hookpoint; + +input telcor; +input luvar; + +input bars; + +input tincotema; input parmatema; +input calmatema; +input quessetema; + +input additionals; +input fullvowels; +input carriers; +input accents; + +input punctuation; +input numerals; |