% This macro source file is from the four volume series
% "TeX in Practice" by Stephan von Bechtolsheim, published
% 1993 by Springer-Verlag, New York.
% Copyright 1993 Stephan von Bechtolsheim.
% No warranty or liability is assumed.
% This macro may be copied freely if no fees other than
% media cost or shipping charges are charged and as long
% as this copyright and the following source code itself
% is not changed. Please see the series for further information.
%
% Version: 1.0
% Date: May 1, 1993
%
%
% This source code is documented in 16.8.1, p. II-298.
% Original source in file "fonts2.TEX", starting line 1840.
\wlog{L: "fotable.tip" ["fonts2.TEX," l. 1840, p. II-298]}%
% This file DOES belong to format "texip."
\catcode`\@ = 11
\def\@OctPrintFontTable#1{%
   \hbox{%
       \rm\'{}%
       \kern-.2em
       \it #1\/%
       \kern.05em
   }%
}
\def\@HexPrintFontTable#1{%
   \hbox{\rm\H{}\tt#1}%
}
\def\@OddLineFontTable#1{%
   \cr
   \noalign{\nointerlineskip}
   \multispan{19}\hrulefill&
   \setbox0 = \hbox{%
       \lower 2.3pt\hbox{%
           \@HexPrintFontTable{#1x}%
       }%
   }%
   \smash{\box0}%
   \cr
   \noalign{\nointerlineskip}
}
\def\@EvenLineFontTable{\cr\noalign{\hrule}}
\def\@FontTableStrut{\lower4.5pt\vbox to 14pt{}}
\def\BeginFontTable #1{%
   $$
   \postdisplaypenalty = 0
   \global\count@=0
   #1
   \halign to\hsize\bgroup
       \@FontTableStrut##\relax    \tabskip = 0pt plus 10pt&
       &\hfil##\hfil&\vrule##%
   \cr
   \lower6.5pt\null
   &&&
   \@OctPrintFontTable0&&
   \@OctPrintFontTable1&&
   \@OctPrintFontTable2&&
   \@OctPrintFontTable3&&
   \@OctPrintFontTable4&&
   \@OctPrintFontTable5&&
   \@OctPrintFontTable6&&
   \@OctPrintFontTable7&
   \@EvenLineFontTable
}
\def\EndFontTable{%
   \raise 11.5pt\null
   &&&
   \@HexPrintFontTable 8&&
   \@HexPrintFontTable 9&&
   \@HexPrintFontTable A&&
   \@HexPrintFontTable B&&
   \@HexPrintFontTable C&&
   \@HexPrintFontTable D&&
   \@HexPrintFontTable E&&
   \@HexPrintFontTable F&
   \cr
   \egroup
   $$%
}
\def\:{%
   \setbox0 = \hbox{%
       \char\count@
   }%
   \ifdim\ht0 > 7.5pt
       \@RepositionFontTable
   \else
       \ifdim\dp0 > 2.5pt
           \@RepositionFontTable
       \fi
   \fi
   \box0
   \global\advance\count@ by 1
}
\def\@RepositionFontTable{%
   \setbox0 = \hbox{%
       $
           \vcenter{%
               \kern 2pt
               \box0
               \kern 2pt
           }
       $%
   }%
}
\def\NormalFontTable{%
   &\@OctPrintFontTable{00x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable0
   &\@OctPrintFontTable{01x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{02x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable1
   &\@OctPrintFontTable{03x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{04x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable2
   &\@OctPrintFontTable{05x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{06x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable3
   &\@OctPrintFontTable{07x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{10x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable4
   &\@OctPrintFontTable{11x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{12x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable5
   &\@OctPrintFontTable{13x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{14x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable6
   &\@OctPrintFontTable{15x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{16x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable7
   &\@OctPrintFontTable{17x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
}
\def\MoreFontTable{%
   &\@OctPrintFontTable{20x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable8
   &\@OctPrintFontTable{21x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{22x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable9
   &\@OctPrintFontTable{23x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{24x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable A
   &\@OctPrintFontTable{25x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{26x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable B
   &\@OctPrintFontTable{27x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{30x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable C
   &\@OctPrintFontTable{31x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{32x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable D
   &\@OctPrintFontTable{33x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{34x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable E
   &\@OctPrintFontTable{35x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
   &\@OctPrintFontTable{36x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&&\@OddLineFontTable F
   &\@OctPrintFontTable{37x}&&\:&&\:&&\:&&\:&&\:&&\:&&
       \:&&\:&\@EvenLineFontTable
}
\catcode`\@ = 12