diff options
Diffstat (limited to 'Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf')
-rw-r--r-- | Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf | 341 |
1 files changed, 341 insertions, 0 deletions
diff --git a/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf b/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf new file mode 100644 index 00000000000..8ba304b8b52 --- /dev/null +++ b/Master/texmf-dist/fonts/source/jknappen/ec/exrligtb.mf @@ -0,0 +1,341 @@ +% exrligtb.mf +% +% (c) Copyright 1995, 1996, 1997 J"org Knappen +% (c) Copyright 1990, 1992 Norbert Schwarz +% +% This file is part of ecfonts version 1.0 +% +% Please read the files 00readme.txt, 00inst.txt, 00error.txt, and +% copyrite.txt for further information +% +% You find some documentation in ecdoc.tex (needs LaTeX2e) +% +% Content: +% +% ligtable and kerning programs for roman style fonts +% +% This file should not be called for monospaced fonts ! +% +% The following ligatures are integrated: +% +% fi +% fl +% ff +% ffi +% ffl +% +% -- +% --- +% -<hyphenchar> +% >> +% << +% `` +% '' +% ,, +% !` and ?` + +version_check(1,0); % |version_check| was introduced in dc1.3 + +ligtable + "f": "i"=:oct"034", + "f"=:oct"033", + "l"=:oct"035", + "'" kern itc#, + "`" kern itc#, + oct"020" kern itc#, + oct"021" kern itc#, + "?" kern itc#, + "!" kern itc#, + ")" kern itc#, + "]" kern itc#; +ligtable + oct"033": % ff + "i"=:oct"036", + "l"=:oct"037", + "'" kern itc#, + "`" kern itc#, + oct"020" kern itc#, + oct"021" kern itc#, + "?" kern itc#, + "!" kern itc#, + ")" kern itc#, + "]" kern itc#; +ligtable + "`": "`"=:oct"020", + oct"020" kern 2u#, + "?" kern 2u#, + "!" kern 2u#; + +ligtable + "'": "'"=:oct"021", + oct"021" kern 2u#, + "?" kern 2u#, + "!" kern 2u#; + +ligtable + "-": "-" =: oct"025", + oct"177" =: oct"177"; % <hyphen><hyphenchar> => <hyphenchar> + +ligtable + oct"025": "-"=:oct"026"; % "---" => emdash + +ligtable "<": "<" =: oct"023"; % "<<" +ligtable ">": ">" =: oct"024"; % ">>" +ligtable ",": "," =: oct"022"; % ",," +ligtable "!": "`" =: oct"275"; % spanish shriek +ligtable "?": "`" =: oct"276"; % spanish query + + +def lig_o_table (expr k) = + "o" kern k, oct"256" kern k, oct"362" kern k, oct"363" kern k, + oct"364" kern k, oct"365" kern k, oct"366" kern k, + oct"367" kern k, oct"370" kern k +enddef; + +def lig_a_table (expr k) = + "a" kern k, oct"240" kern k, oct"241" kern k, oct"340" kern k, + oct"341" kern k, oct"342" kern k, oct"342" kern k, + oct"343" kern k, oct"344" kern k, oct"345" kern k, + oct"346" kern k +enddef; + +def lig_c_table (expr k) = + "c" kern k, oct"242" kern k, oct"243" kern k, oct"347" kern k +enddef; + +def lig_e_table (expr k)= + "e" kern k, oct"245" kern k, oct"246" kern k, oct"350" kern k, + oct"351" kern k, oct"352" kern k, oct"353" kern k +enddef; + +def lig_u_table (expr k)= + "u" kern k, oct"266" kern k, oct"267" kern k, oct"371" kern k, + oct"372" kern k, oct"373" kern k, oct"374" kern k +enddef; + +def lig_A_table (expr k)= + "A" kern k, oct"200" kern k, oct"201" kern k, oct"300" kern k, + oct"301" kern k, oct"302" kern k, oct"303" kern k, + oct"304" kern k, oct"305" kern k, oct"306" kern k +enddef; + +def lig_O_table (expr k)= + "O" kern k, oct"216" kern k, oct"322" kern k, oct"323" kern k, + oct"324" kern k, oct"325" kern k, oct"326" kern k, + oct"327" kern k, oct"330" kern k +enddef; + +def lig_CGQ_table (expr k)= + "C" kern k, "G" kern k, oct"202" kern k, oct"203" kern k, + oct"207" kern k, oct"307" kern k, "Q" kern k +enddef; + +def lig_U_table (expr k)= + "U" kern k, oct"226" kern k, oct"227" kern k, oct"331" kern k, + oct"332" kern k, oct"333" kern k, oct"334" kern k +enddef; + +def lig_cA_table = + "A": oct"200": oct"300": oct"301": oct"302": + oct"303": oct"304": oct"305": +enddef; + +k#:=-.5u#; ku#:=-1u#; kk#:=-1.5u#; kkk#:=-2u#; % four degrees of kerning + +ligtable boundarychar: + oct"020" kern -kk#, oct"021" kern -kk#, oct"022" kern -kk#, + oct"055" kern -kk#, oct"140" kern -kk#, oct"047" kern -kk#; + +ligtable oct"022": + oct"015" kern 2u#, "," kern 2u#, + oct"015": + oct"022" kern 2u#, + "j" kern -kkk#, oct"032" kern -kkk#, "g" kern -ku#, oct"247" kern -ku#, + "y" kern -ku#, oct"270" kern -ku#, oct"375" kern -ku#, + "v" kern kk#, "w" kern ku#, "V" kern kkk#, "W" kern kk#, + "Y" kern kk#, oct"230" kern kk#, oct"335" kern kk#, + lig_O_table(k#), lig_CGQ_table(k#), + boundarychar kern -kk#; + +ligtable oct"020": + oct"140" kern 2u#, oct"020" kern 2u#, boundarychar kern -kk#; + +ligtable oct"021": + oct"047" kern 2u#, oct"021" kern 2u#, boundarychar kern -kk#; + +ligtable oct"024": % ">>" + "." kern kk#, "," kern kk#; + +ligtable + "k": "W" kern kk#, "V" kern kk#, + if serifs: "v": lig_a_table(-u#), fi + "w": lig_e_table(k#), + lig_a_table(k#), + lig_o_table(k#), + lig_c_table(k#); + +ligtable + "P": lig_A_table(kk#), + "y": oct"270": oct"375": % \"y, \'y + lig_o_table(k#), + lig_e_table(k#), + lig_a_table(k#), + "." kern kk#, + "," kern kk#; +ligtable + "F":"V": "W": + if serifs: + "o" kern kk#, + "a" kern kk#, + "e" kern kk#, + "y" kern kk#, + "u" kern kk#, + "r" kern kk#, + "v" kern kk#, + "s" kern kk#, + "c" kern kk#, + "d" kern kk#, + "g" kern kk#, + "m" kern kk#, + "n" kern kk#, + "p" kern kk#, + "w" kern kk#, + "z" kern kk#, + oct"346" kern kk#, + oct"370" kern kk#, + lig_A_table(kkk#), + else: + "o" kern k#, + "a" kern k#, + "e" kern k#, + "y" kern k#, + "u" kern k#, + "r" kern k#, + "v" kern k#, + "s" kern k#, + "c" kern k#, + "d" kern k#, + "g" kern k#, + "m" kern k#, + "n" kern k#, + "p" kern k#, + "w" kern k#, + "z" kern k#, + oct"346" kern k#, + oct"370" kern k#, + lig_A_table(kk#), + fi + "X": lig_O_table(k#), + lig_CGQ_table(k#); + +ligtable "K": if serifs: + "v" kern kk#, + "w" kern k#, + else: + "v" kern k#, + fi + lig_o_table(k#), + lig_CGQ_table(k#); + +ligtable + "T": oct"224": oct"225": % \v{T}, \c{T} + "y" kern if serifs: k# else: kk# fi, + "Y": oct"230": oct"335": % \"Y, \'Y + "e" kern kk#, + "o" kern kk#, + "r" kern kk#, + "a" kern kk#, + "u" kern kk#, + "n" kern kk#, + oct"031" kern kk#, % \i + "c" kern kk#, + "d" kern kk#, + "g" kern kk#, + "p" kern kk#, + "s" kern kk#, + "v" kern kk#, + "w" kern kk#, + "x" kern kk#, + "z" kern kk#, + lig_A_table(kk#); +ligtable + "O": oct"216": oct"322": oct"323": oct"324": oct"325": oct"326": oct"330": + "D": oct"204": oct"320": + "X" kern k#, + "W" kern k#, + lig_A_table(k#), + "V" kern k#, + "Y" kern k#, oct"230" kern k#, oct"335" kern k#; +if serifs: +ligtable + "m": "n": "h": + "W" kern kk#, "V" kern kk#, + oct"253": oct"254": oct"255": oct"361": % \'n, \v{n}, \ng, \~n + "t" kern k#, + lig_u_table(k#), + "b" kern k#, + "y" kern k#, + "v" kern k#, + "w" kern k#; +ligtable + "c": oct"242": oct"243": oct"347": % \'c, \v{c}, \c{c} + "h" kern k#, + "k" kern k#; +fi +ligtable + "o": oct"256": oct"362": oct"363": oct"364": oct"365": oct"366": oct"370": + "b": "p": lig_e_table(-k#), + lig_o_table(-k#), + "x" kern k#, + "d" kern -k#, + lig_c_table(-k#), + "q" kern -k#, + "a": oct"240": oct"340": oct"341": oct"342": oct"343": oct"344": oct"345": + if serifs: + "v" kern k#, + "j" kern u#, + else: + "r" kern k#, + fi + "t": oct"264": oct"265": + "y" kern k#, oct"270" kern k#, oct"375" kern k#, + "u": oct"266": oct"267": oct"371": oct"372": oct"373": oct"374": + "w" kern k#; +ligtable + lig_cA_table + "y" kern if serifs: kk# else: k# fi, + oct"270" kern if serifs: kk# else: k# fi, + oct"375" kern if serifs: kk# else: k# fi, + oct"202": %\k{A} + "v" kern if serifs: kkk# else: k# fi, + "w" kern if serifs: kk# else: k# fi, + lig_c_table(k#), + "d" kern k#, oct"244" kern k#, + oct"236" kern k#, oct"360" kern k#, + lig_e_table(k#), + lig_o_table(k#), + "q" kern k#, + if serifs: "R": oct"217": fi + "t" kern k#, oct"264" kern k#, oct"265" kern k#, + lig_CGQ_table(k#), + lig_O_table(k#), + lig_U_table(k#), + "L": oct"210": oct"211": oct"212": + "T" kern kk#, oct"224" kern kk#, oct"225" kern kk#, + "Y" kern kk#, oct"230" kern kk#, oct"335" kern kk#, + "V" kern kkk#, + "W" kern kkk#; +ligtable "g": "j" kern -k#; % logjam +ligtable "I": "I" kern -k#; % Richard III +ligtable "e": "V" kern kk#; % eV +ligtable oct"241": % \k{a} + if serifs: "g" kern -k# , "p" kern -k#, fi\\ "w" kern k#; +ligtable oct"252": % \l + "'" kern -k# + if not serifs: , + "a" kern k#, oct"241" kern k#, "c" kern k#, oct"242" kern k#, + "d" kern k#, "e" kern k#, oct"246" kern k#, "g" kern k#, + "o" kern k#, oct"363" kern k#, "s" kern k#, oct"261" kern k# + fi; + +endinput; |