% excligtb.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: % % ligatures and kerning for "caps and small caps" fonts % % This file should not be called for monospaced fonts ! % % The following ligatures are integrated: % % -- % --- % - % >> % << % `` % '' % ,, % !` and ?` % version_check(1,0); % |version_check| was introduced in dc1.3 ligtable "-": "-" =: oct"025", oct"177" =: oct"177"; % => 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 ligtable "`": "`"=:oct"020", oct"020" kern 2u#, "?" kern 2u#, "!" kern 2u#; ligtable "'": "'"=:oct"021", oct"021" kern 2u#, "?" kern 2u#, "!" kern 2u#; % % 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 enddef; def lig_co_table = "o": oct"256": oct"362": oct"363": oct"364": oct"365": oct"366": oct"367" 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"343" kern k, oct"344" kern k, oct"345" kern k, oct"346" 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 enddef; def lig_ca_table = "a": oct"241": oct"242": oct"340": oct"341": oct"342": oct"343": oct"344": oct"345": oct"346" 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_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_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_cA_table = "A": oct"200": oct"201": oct"300": oct"301": oct"302": oct"303": oct"304": oct"305" enddef; def lig_cO_table = "O": oct"216": oct"322": oct"323": oct"324": oct"325": oct"326": oct"330" 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"330" 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; % % % % k#:=-.5u#; ku#:=-1.0u#; 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#, "y" kern ku#, oct"270" kern ku#, oct"375" kern ku#, "v" kern ku#, "w" kern k#, "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 "P": "T": "Y": "a" kern kk#, lig_A_table(kk#); ligtable "F": "V": "W": if serifs: lig_a_table(kkk#), lig_A_table(kkk#), else: lig_a_table(kk#), lig_A_table(kk#), fi "K": "X": lig_o_table(k#), lig_O_table(k#), lig_c_table(k#), lig_CGQ_table(k#), "g" kern k#, oct"247" kern k#, "q" kern k#; ligtable "O": "D": "x" kern k#, "X" kern k#, "w" kern k#, "W" kern k#, lig_a_table(k#), lig_A_table(k#), "v" kern k#, "V" kern k#, "y" kern k#, oct"375" kern k#, oct"270" kern k#, "Y" kern k#, oct"335" kern k#, oct"230" kern k#; ligtable lig_cA_table: if serifs: "R": fi lig_c_table(k#), lig_CGQ_table(k#), lig_o_table(k#), lig_O_table(k#), "g" kern k#, oct"247" kern k#, lig_u_table(k#), lig_U_table(k#), "q" kern k#, "L": "T" kern kk#, oct"224" kern kk#, oct"225" kern kk#, "t" kern kk#, oct"264" kern kk#, oct"265" kern kk#, "Y" kern kk#, oct"230" kern kk#, oct"335" kern kk#, "y" kern kk#, oct"270" kern kk#, oct"375" kern kk#, "V" kern kkk#, "v" kern kkk#, "W" kern kkk#, "w" kern kkk#; ligtable "I": "I" kern -k#; % Richard III k#:=-.5u#; kk#:=-1.5u#; kkk#:=-2u#; % three degrees of kerning ligtable "p": "t": "y": lig_a_table(kk#); ligtable "f": "v": "w": if serifs: lig_a_table(kkk#) else: lig_a_table(kk#) fi, "k": "x": lig_o_table(k#), lig_c_table(k#), "g" kern k#, oct"247" kern k#, "q" kern k#; ligtable lig_co_table: "d": "x" kern k#, "w" kern k#, lig_a_table(k#), "v" kern k#, "y" kern k#, oct"270" kern k#, oct"375" kern k#; ligtable lig_ca_table: if serifs: "r": fi lig_c_table(k#), lig_o_table(k#), "g" kern k#, oct"247" kern k#, lig_u_table(k#), "q" kern k#, "l": "'" kern kk#, "t" kern kk#, oct"264" kern kk#, oct"265" kern kk#, "y" kern kk#, oct"270" kern k#, oct"375" kern k#, "v" kern kkk#, "w" kern kkk#; ligtable "i": "i" kern -k#; % skiing endinput;