summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/fonts/source/public/lfb/accents.mf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-09 23:38:21 +0000
committerKarl Berry <karl@freefriends.org>2006-01-09 23:38:21 +0000
commit215012a8d684889983ec2c0629e1c704e6853d9c (patch)
treeebf1271bd71869069824935ae8a5678745bf8bce /Master/texmf-dist/fonts/source/public/lfb/accents.mf
parent1af3d19d6dbcbf309667d9cb4aa3cdda914914a9 (diff)
trunk/Master/texmf-dist/fonts/source
git-svn-id: svn://tug.org/texlive/trunk@101 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/fonts/source/public/lfb/accents.mf')
-rw-r--r--Master/texmf-dist/fonts/source/public/lfb/accents.mf670
1 files changed, 670 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/public/lfb/accents.mf b/Master/texmf-dist/fonts/source/public/lfb/accents.mf
new file mode 100644
index 00000000000..5290e9271af
--- /dev/null
+++ b/Master/texmf-dist/fonts/source/public/lfb/accents.mf
@@ -0,0 +1,670 @@
+
+ %% accents.mf
+ %% Copyright 2005 Laurie Field
+ %
+ % This work is LFB, version 1.0.
+ %
+ % This work may be distributed and/or modified under the
+ % conditions of the LaTeX Project Public License, either version 1.3
+ % of this license or (at your option) any later version.
+ % The latest version of this license is in
+ % http://www.latex-project.org/lppl.txt
+ % and version 1.3 or later is part of all distributions of LaTeX
+ % version 2003/12/01 or later.
+ %
+ % This work has the LPPL maintenance status "maintained".
+ %
+ % This Current Maintainer of this work is Laurie Field.
+ %
+ % This work consists of the files:
+ %
+ % example.tex
+ % lfbacc.tex
+ %
+ % accents.mf
+ % alpha.mf
+ % beta.mf
+ % capitals.mf
+ % charmap.mf
+ % delta.mf
+ % epsilon.mf
+ % eta.mf
+ % gamma.mf
+ % iota.mf
+ % kappa.mf
+ % khi.mf
+ % lambda.mf
+ % lfb.mf
+ % lfb5.mf
+ % lfb6.mf
+ % lfb7.mf
+ % lfb8.mf
+ % lfb9.mf
+ % lfb10.mf
+ % lfb11.mf
+ % lfb12.mf
+ % lfbb5.mf
+ % lfbb6.mf
+ % lfbb7.mf
+ % lfbb8.mf
+ % lfbb9.mf
+ % lfbb10.mf
+ % lfbb11.mf
+ % lfbb12.mf
+ % ligature.mf
+ % mu.mf
+ % nu.mf
+ % omega.mf
+ % omikron.mf
+ % others.mf
+ % phi.mf
+ % pi.mf
+ % psi.mf
+ % rho.mf
+ % serifs.mf
+ % sigma.mf
+ % sigmafin.mf
+ % tau.mf
+ % theta.mf
+ % upsilon.mf
+ % xi.mf
+ % zeta.mf
+ %
+ % and the derived files:
+ %
+ % lfb5.tfm
+ % lfb6.tfm
+ % lfb7.tfm
+ % lfb8.tfm
+ % lfb9.tfm
+ % lfb10.tfm
+ % lfb11.tfm
+ % lfb12.tfm
+ % lfbb5.tfm
+ % lfbb6.tfm
+ % lfbb7.tfm
+ % lfbb8.tfm
+ % lfbb9.tfm
+ % lfbb10.tfm
+ % lfbb11.tfm
+ % lfbb12.tfm
+ %
+ % lfb5.600pk
+ % lfb6.600pk
+ % lfb7.600pk
+ % lfb8.600pk
+ % lfb9.600pk
+ % lfb10.600pk
+ % lfb11.600pk
+ % lfb12.600pk
+ % lfbb5.600pk
+ % lfbb6.600pk
+ % lfbb7.600pk
+ % lfbb8.600pk
+ % lfbb9.600pk
+ % lfbb10.600pk
+ % lfbb11.600pk
+ % lfbb12.600pk
+ %
+
+% Every character that wishes to use these accents should
+% define accent_centre (numeric) to be the x coordinate
+% around which the accent should be centred.
+
+
+def acc_smooth =
+ penpos101(thick, 90);
+ penpos102(medthin, 0);
+ penpos103(thin, -90);
+ z100=z101+(4/3(z101l-z101) rotated -60);
+ y103r=x_height+.85u;
+ y102=y103l+.85u;
+ y101l=y102+.7u;
+ x100=accent_centre-1/2breathingwidth;
+ x102r=x100+breathingwidth;
+ x103=x100+1/3breathingwidth;
+ fill z100..z101l..z102l..{dir -150}z103l
+ --z103r{dir 30}..z102r..{left}z101r..cycle;
+enddef;
+
+
+def acc_rough =
+ penpos111(thick, -90);
+ penpos112(medthin, 0);
+ penpos113(thin, 90);
+ z110=z111+(4/3(z111l-z111) rotated -120);
+ y113l=x_height+.85u;
+ y112=y113r+.85u;
+ y111r=y112+.7u;
+ x110=x112l+breathingwidth;
+ x112l=accent_centre-1/2breathingwidth;
+ x113=x112l+2/3breathingwidth;
+ fill z110..z111l..z112l..{dir -30}z113l
+ --z113r{dir 150}..z112r..{right}z111r..cycle;
+enddef;
+
+
+def acc_acute =
+ penpos121(thick, acuteangle-90);
+ penpos122(thin, acuteangle-90);
+ z120=z121+((z121l-z121) rotated -90);
+ z123=z122+((z122l-z122) rotated 90);
+ y123=x_height+.85u;
+ y120=y123+1.55u+thick+thin;
+ x122=accent_centre;
+ z310=dir acuteangle;
+ (x121-x122)/x310=(y121-y122)/y310;
+ fill z120..z121l---z122l..z123..z122r---z121r..cycle;
+enddef;
+
+
+def acc_grave =
+ penpos131(thick, graveangle-90);
+ penpos132(thin, graveangle-90);
+ z130=z131+((z131l-z131) rotated -90);
+ z133=z132+((z132l-z132) rotated 90);
+ y133=x_height+.85u;
+ y130=y133+1.55u+thick+thin;
+ x132=accent_centre;
+ z310=dir graveangle;
+ (x131-x132)/x310=(y131-y132)/y310;
+ fill z130..z131l---z132l..z133..z132r---z131r..cycle;
+enddef;
+
+
+def acc_circ =
+ penpos141(thin, 80);
+ penpos142(medium, 90);
+ penpos143(medium, 90);
+ penpos144(thin, 80);
+ y141l=x_height+thick;
+ y143l=y141l+tiny;
+ y142l=y141l+medium;
+ y144r=y142r+tiny;
+ x141=accent_centre-1/2circwidth;
+ x144=accent_centre+1/2circwidth;
+ x142=1/4[x141, x144];
+ x143=3/4[x141, x144];
+ penstroke z141e..z142e..z143e..z144e;
+enddef;
+
+
+def mini_circ =
+ penpos141(thin, 80);
+ penpos142(medium, 90);
+ penpos143(medium, 90);
+ penpos144(thin, 80);
+ y141l=x_height+4u;
+ y143l=y141l+tiny;
+ y142l=y141l+medium;
+ y144r=y142r+tiny;
+ x141=accent_centre-1/2circwidth;
+ x144=accent_centre+1/2circwidth;
+ x142=1/4[x141, x144];
+ x143=3/4[x141, x144];
+ penstroke z141e..z142e..z143e..z144e;
+enddef;
+
+
+def acc_smoothacute =
+ accent_centre:=accent_centre-breathingwidth/2-tiny;
+ acc_smooth;
+ accent_centre:=accent_centre+breathingwidth/2+medium;
+ acc_acute;
+enddef;
+
+
+def acc_smoothgrave =
+ accent_centre:=accent_centre-breathingwidth/2-tiny;
+ acc_smooth;
+ accent_centre:=accent_centre+breathingwidth/2+2u;
+
+ penpos131(thick, graveangle-100);
+ penpos132(thin, graveangle-100);
+ z130=z131+((z131l-z131) rotated -90);
+ z133=z132+((z132l-z132) rotated 90);
+ y133=x_height+.85u;
+ y130=y133+1.55u+thick+thin;
+ x132=accent_centre;
+ z310=dir (graveangle-10);
+ (x131-x132)/x310=(y131-y132)/y310;
+ fill z130..z131l---z132l..z133..z132r---z131r..cycle;
+enddef;
+
+
+def acc_smoothcirc =
+ numeric rc;
+ rc := 5/6;
+ penpos101(rc*thick, 90);
+ penpos102(rc*medthin, 0);
+ penpos103(rc*thin, -90);
+ z100=z101+(4/3(z101l-z101) rotated -60);
+ y103r=x_height+.85u;
+ y102=y103l+rc*.85u;
+ y101l=y102+rc*.7u;
+ x100=accent_centre-rc*1/2breathingwidth;
+ x102r=x100+rc*breathingwidth;
+ x103=x100+rc*1/3breathingwidth;
+ fill z100..z101l..z102l..{dir -150}z103l
+ --z103r{dir 30}..z102r..{left}z101r..cycle;
+
+ mini_circ;
+enddef;
+
+
+def acc_roughacute =
+ accent_centre:=accent_centre-breathingwidth/2-tiny;
+ acc_rough;
+ accent_centre:=accent_centre+breathingwidth/2+medium;
+ acc_acute;
+enddef;
+
+
+def acc_roughgrave =
+ accent_centre:=accent_centre-breathingwidth/2-tiny;
+ acc_rough;
+ accent_centre:=accent_centre+breathingwidth/2+2u;
+
+ penpos131(thick, graveangle-100);
+ penpos132(thin, graveangle-100);
+ z130=z131+((z131l-z131) rotated -90);
+ z133=z132+((z132l-z132) rotated 90);
+ y133=x_height+.85u;
+ y130=y133+1.55u+thick+thin;
+ x132=accent_centre;
+ z310=dir (graveangle-10);
+ (x131-x132)/x310=(y131-y132)/y310;
+ fill z130..z131l---z132l..z133..z132r---z131r..cycle;
+enddef;
+
+
+def acc_roughcirc =
+ numeric rc;
+ rc := 5/6;
+ penpos111(rc*thick, -90);
+ penpos112(rc*medthin, 0);
+ penpos113(rc*thin, 90);
+ z110=z111+(4/3(z111l-z111) rotated -120);
+ y113l=x_height+.85u;
+ y112=y113r+rc*.85u;
+ y111r=y112+rc*.7u;
+ x110=x112l+rc*breathingwidth;
+ x112l=accent_centre-rc*1/2breathingwidth;
+ x113=x112l+rc*2/3breathingwidth;
+ fill z110..z111l..z112l..{dir -30}z113l
+ --z113r{dir 150}..z112r..{right}z111r..cycle;
+
+ mini_circ;
+enddef;
+
+
+def acc_diaer =
+ numeric diameter;
+ diameter=6/7quotewidth;
+
+ x151 = x152+1/2diameter = x153 = x154-1/2diameter
+ = accent_centre - 1.5u;
+ x155 = x156+1/2diameter = x157 = x158-1/2diameter
+ = accent_centre + 1.5u;
+ y151-1/2diameter = y152 = y153+1/2diameter = y154
+ = y155-1/2diameter = y156 = y157+1/2diameter = y158
+ = x_height+2u;
+
+ fill z151..z152..z153..z154..cycle;
+ fill z155..z156..z157..z158..cycle;
+enddef;
+
+
+def acc_diaeracute =
+ numeric diameter;
+ diameter=6/7quotewidth;
+
+ x151 = x152+1/2diameter = x153 = x154-1/2diameter
+ = accent_centre - 2u;
+ x155 = x156+1/2diameter = x157 = x158-1/2diameter
+ = accent_centre + 2u;
+ y151-1/2diameter = y152 = y153+1/2diameter = y154
+ = y155-1/2diameter = y156 = y157+1/2diameter = y158
+ = x_height+2u;
+
+ fill z151..z152..z153..z154..cycle;
+ fill z155..z156..z157..z158..cycle;
+
+ penpos121(thick, acuteangle-90);
+ penpos122(thin, acuteangle-90);
+ z120=z121+((z121l-z121) rotated -90);
+ z123=z122+((z122l-z122) rotated 90);
+ y123=x_height+.85u;
+ y120=y123+1.55u+thick+thin;
+ x122=accent_centre-.5u;
+ z310=dir acuteangle;
+ (x121-x122)/x310=(y121-y122)/y310;
+ fill z120..z121l---z122l..z123..z122r---z121r..cycle;
+enddef;
+
+
+def acc_diaergrave =
+ numeric diameter;
+ diameter=quotewidth;
+
+ x151 = x152+1/2diameter = x153 = x154-1/2diameter
+ = accent_centre - 2u;
+ x155 = x156+1/2diameter = x157 = x158-1/2diameter
+ = accent_centre + 2u;
+ y151-1/2diameter = y152 = y153+1/2diameter = y154
+ = y155-1/2diameter = y156 = y157+1/2diameter = y158
+ = x_height+2u;
+
+ fill z151..z152..z153..z154..cycle;
+ fill z155..z156..z157..z158..cycle;
+
+ penpos131(thick, graveangle-90);
+ penpos132(thin, graveangle-90);
+ z130=z131+((z131l-z131) rotated -90);
+ z133=z132+((z132l-z132) rotated 90);
+ y133=x_height+.85u;
+ y130=y133+1.55u+thick+thin;
+ x132=accent_centre+.5u;
+ z310=dir graveangle;
+ (x131-x132)/x310=(y131-y132)/y310;
+ fill z130..z131l---z132l..z133..z132r---z131r..cycle;
+enddef;
+
+
+def acc_breve =
+ penpos161(thin, 0);
+ penpos162(medium, 90);
+ penpos163(thin, 180);
+
+ y161=y163=ascender;
+ y162l=x_height+1u;
+ x161l=x162-1/2circwidth;
+ x163l=x162+1/2circwidth;
+ x162=accent_centre;
+
+ penstroke z161e{down}..z162e..{up}z163e;
+enddef;
+
+
+def acc_macron =
+ penpos171(medium, 90);
+ penpos172(medium, 90);
+
+ y171l=y172l=x_height+1.2u;
+ x171=accent_centre-1/2circwidth;
+ x172=accent_centre+1/2circwidth;
+
+ penstroke z171e--z172e;
+enddef;
+
+
+def acc_iotasub =
+ penpos181(medium, 0);
+ penpos182(medium, 0);
+ penpos183(medthin, 90);
+
+ x181=x182=accent_centre;
+ x183=x182r+tiny;
+ y181=0-medthin;
+ y182=y183r+tiny;
+ y183l=0-descender-thin;
+ z184=z183+((z183l-z183) rotated 120);
+
+ fill z181l---z182l..z183l..z184..z183r..z182r---z181r--cycle;
+enddef;
+
+
+
+width#:=breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_smooth;
+enddef;
+
+beginchar(smooth, width#+extra#, ascender#, 0);
+gen_letter; penlabels(100,101,102,103);
+endchar;
+
+
+width#:=breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_rough;
+enddef;
+
+beginchar(rough, width#+extra#, ascender#, 0);
+gen_letter; penlabels(110,111,112,113);
+endchar;
+
+
+width#:=3u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width-1u;
+ acc_acute;
+enddef;
+
+beginchar(acute, width#+extra#, ascender#, 0);
+gen_letter; penlabels(120,121,122,123);
+endchar;
+
+
+width#:=3u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_grave;
+enddef;
+
+beginchar(grave, width#+extra#, ascender#, 0);
+gen_letter; penlabels(130,131,132,133);
+endchar;
+
+
+width#:=circwidth#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_circ;
+enddef;
+
+beginchar(circ, width#+extra#, ascender#, 0);
+gen_letter; penlabels(140,141,142,143,144);
+endchar;
+
+
+width#:=1.5u#+2thin#+breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_smoothacute;
+enddef;
+
+beginchar(smoothacute, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=1.5u#+2thin#+breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_smoothgrave;
+enddef;
+
+beginchar(smoothgrave, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=3/4circwidth#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_smoothcirc;
+enddef;
+
+beginchar(smoothcirc, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=1.5u#+2thin#+breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_roughacute;
+enddef;
+
+beginchar(roughacute, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=1.5u#+2thin#+breathingwidth#;
+extra#:=2letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_roughgrave;
+enddef;
+
+beginchar(roughgrave, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=3/4circwidth#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_roughcirc;
+enddef;
+
+beginchar(roughcirc, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=quotewidth#+3u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_diaer;
+enddef;
+
+beginchar(diaer, width#+extra#, ascender#, 0);
+gen_letter; penlabels(151,152,153,154,155,156,157,158);
+endchar;
+
+
+width#:=quotewidth#+4u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_diaeracute;
+enddef;
+
+beginchar(diaeracute, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=quotewidth#+4u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_diaergrave;
+enddef;
+
+beginchar(diaergrave, width#+extra#, ascender#, 0);
+gen_letter;
+endchar;
+
+
+width#:=circwidth#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_breve;
+enddef;
+
+beginchar(breve, width#+extra#, ascender#-macronbreveshorter#, 0);
+gen_letter; penlabels(161,162,163);
+endchar;
+
+
+width#:=circwidth#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_macron;
+enddef;
+
+beginchar(macron, width#+extra#, ascender#-macronbreveshorter#, 0);
+gen_letter; penlabels(171,172);
+endchar;
+
+
+width#:=2u#;
+extra#:=1letterspace#;
+define_pixels(width, extra);
+
+def gen_letter =
+ numeric accent_centre;
+ accent_centre=1/2width;
+ acc_iotasub;
+enddef;
+
+beginchar(iotasub, width#+extra#, 0, descender#);
+gen_letter; penlabels(181,182,183,184);
+endchar;