% \CheckSum{170}
%\iffalse	 This is a META comment
%
% File `tpcmfont.fdd' by Timo Knuutila (knuutila@cs.utu.fi).
%
% Please do not change this file: if you feel it should be changed,
% contact the author.
%
%<T1cmdh,   >\ProvidesFile{T1cmdh.fd}
%<T1cmfib,  >\ProvidesFile{T1cmfib.fd}
%<T1cmfr,   >\ProvidesFile{T1cmfr.fd}
%<T1cmr,    >\ProvidesFile{T1cmr.fd}
%<T1cmss,   >\ProvidesFile{T1cmss.fd}
%<T1cmtt,   >\ProvidesFile{T1cmtt.fd}
%<T1ccr,    >\ProvidesFile{T1ccr.fd}
%<OT1cmdh,  >\ProvidesFile{OT1cmdh.fd}
%<OT1cmfib, >\ProvidesFile{OT1cmfib.fd}
%<OT1cmfr,  >\ProvidesFile{OT1cmfr.fd}
%<OT1cmr,   >\ProvidesFile{OT1cmr.fd}
%<OT1cmss,  >\ProvidesFile{OT1cmss.fd}
%<OT1cmtt,  >\ProvidesFile{OT1cmtt.fd}
%<Ucmr,     >\ProvidesFile{Ucmr.fd}
%<Ucmss,    >\ProvidesFile{Ucmss.fd}
%<Ucmtt,    >\ProvidesFile{Ucmtt.fd}
%<OMLcmm,   >\ProvidesFile{OMLcmm.fd}
%<OMScmsy,  >\ProvidesFile{OMScmsy.fd}
%<OMXcmex,  >\ProvidesFile{OMXcmex.fd}
%<*driver,  >
	     \ProvidesFile{tpcmfont.drv}
%</driver,  >
	[1995/08/21 v1.1 LaTeX font definitions with true point sizes]
%
%<*driver>
\documentclass{ltxdoc}
\usepackage{texnames}
\GetFileInfo{tpcmfont.drv}
\providecommand\dst{\expandafter{\normalfont\scshape docstrip}}
\title{The file \texttt{tpcmfont.fdd} for use with
      \LaTeXe.\thanks{This file has version
	   number \fileversion, dated \filedate.}}
\date{\filedate}
\author{Timo Knuutila}
\begin{document}
\maketitle
 \DocInput{tpcmfont.fdd}
\end{document}
%</driver>
%
%\fi
%
% \section{Introduction}
%
% This file contains the external font information needed to load
% those of the Computer Modern fonts that are also found from the
% |sauter| package and all the DC fonts. Fontshapes are declared
% in true point sizes instead of the traditional scaled versions.
%
% Lot of the suff here has been copied
% from Mittelbach's and Schoepf's original |cmfonts.fdd|.
% The structure of this file follows the original, and the discussion
% occurring in |cmfonts.fdd| applies unless otherwise stated (it has been
% mostly omitted here). The lines that have been copied are preceded by M\&S
% (for Mittelbach and Schoepf).
%
% \section{The \texttt{docstrip} modules}
%
% The following modules are used to direct \texttt{docstrip} in
% generating external files. 
% \begin{center}
% \begin{tabular}{ll}
%   driver & produce a documentation driver file \\
%   fd	   & produce a font definition file \\[2pt]
%   OMLcmm   & make Computer Modern Math italic\\
%   OMScmsy  & make Computer Modern Symbols \\
%   OMXcmex  & make Computer Modern large Symbols\\
%   OT1cmdh  & make Computer Modern Dunhill (old encoding)\\
%   OT1cmfib & make Computer Modern Fibonacci (old encoding)\\
%   OT1cmfr  & make Computer Modern Funny (old encoding)\\
%   OT1cmr   & make Computer Modern Roman (old encoding)\\
%   OT1cmss  & make Computer Modern Sans (old encoding)\\
%   OT1cmtt  & make Computer Modern Typewriter (old encoding)\\
%   T1ccr    & make Concrete Roman (Cork encoding)\\
%   T1cmdh   & make Computer Modern Dunhill (Cork encoding)\\
%   T1cmfib  & make Computer Modern Fibonacci (Cork encoding)\\
%   T1cmfr   & make Computer Modern Funny (Cork encoding)\\
%   T1cmr    & make Computer Modern Roman (Cork encoding)\\
%   T1cmss   & make Computer Modern Sans (Cork encoding)\\
%   T1cmtt   & make Computer Modern Typewriter (Cork encoding)\\
%   Ucmr    & make Computer Modern Roman (unknown encoding)\\
%   Ucmss   & make Computer Modern Sans (unknown encoding)\\
%   Ucmtt   & make Computer Modern Typewriter (unknown encoding)\\
% \end{tabular}
% \end{center}
%Note that the following modules (contained in the standard \LaTeX\
% distribution) are \emph{not}
% replaced: |OMLcmr|, |OMScmr|, |OMLccm|, |OT1ccr|, |OT2cmr|, and |OT2cmss|.
%
%  \section{Installation}
%
% \subsection{\LaTeX\ files}
%
%   Just replace the original |.fd| -files with the ones produced by
%   running \LaTeX\ on |tpcmfont.ins| and recreate the \LaTeX\ format. 
%   Make a backup copy of the originals before making the replacement.
%   For example, in |unix| machines supposing that your 
%\begin{itemize}
%\item |base| stuff is in directory |latexdir|
% (like |/usr/local/lib/texmf/tex/latex2e/base|),
%\item format files are in directory |fmtdir| 
%(like |/usr/local/lib/texmf/ini|), and
%\item this package 
%   has been unpacked to |distdir| (like |~/tmp|)):
%\end{itemize}
%\begin{verbatim}
%cd latexdir
%mkdir backup
%mv *.fd backup
%cp distdir/*.fd .
%initex latex
%...
%cd fmtdir
%mv latex.fmt latex.fmt.backup
%mv latexdir/latex.fmt .
%\end{verbatim}
%
%   If you want to use this package
%   only for the Cork encoded fonts, replace only the files beginning with
%   T1. If you choose to use only the old encoding, you must replace
%   both OT1- and U- prefixed |.fd| files.
%
% \subsection{\MF\ files}
% Run \TeX\ on |dcxtedt.tex| to create the necessary |.mf| sources
% and place them into \MF{}'s input directory
% (like |/usr/local/lib/texmf/fonts/public/dc/src|).
%
%  \section{The font definition files}
%
%    The basic macro below is used whenever a full set of fonts 
%    (point sizes 5--12, 14, 17, 20, and 25) is
%    available. For some strange reason only the ugly code below
%    seems to work appropriately. The macro is copied to all |.fd|
%    files created.
%    \begin{macrocode}
%<*fd>
\providecommand*{\TPFamily}[5]{%
\DeclareFontShape{#1}{#2}{#4}{#5}{%
  <5> #35 <6> #36 <7> #37 <8> #38 <9> #39 <10> #310
  <10.95> #311 <12> #312 <14.4> #314 <17.28> #317 <20.74> #320 <24.88> #325
  }{}%
}
%</fd>
%    \end{macrocode}
%
%  \subsection{Fonts with Cork encoding (\texttt{T1})}
%
%    The DC-fonts are Computer Modern fonts
%    reimplemented by Norbert Schwarz and currently developed further by
%    Joerg Knappen. You can get them from \TeX{}
%    archives and from \TeX{} organizations.
%    The implementation allows one to easily create fonts for
%    all point sizes ever needed (package |mfnfss| contains the metafont
%    sources for Computer Concrete). With the conventional CM-fonts
%    one needs the |sauter| fonts (found from CTAN, too).
%
%  \subsubsection{The Computer Modern Roman}
%
%    Available in the shapes |n|, |sl|, |it|, |sc|, and |u|. Also bold
%    series |b| (with normal shape only), and bold extended |bx| with shapes
%    |n|, |sl|, and |it|.
%    \begin{macrocode}
%<*T1cmr>
\DeclareFontFamily{T1}{cmr}{}{}
\TPFamily{T1}{cmr}{dcr}{m}{n}
\TPFamily{T1}{cmr}{dcsl}{m}{sl}
\TPFamily{T1}{cmr}{dcti}{m}{it}
\TPFamily{T1}{cmr}{dccsc}{m}{sc}
\TPFamily{T1}{cmr}{dcu}{m}{u}
\TPFamily{T1}{cmr}{dcb}{b}{n}
\TPFamily{T1}{cmr}{dcbx}{bx}{n}
\TPFamily{T1}{cmr}{dcbxsl}{bx}{sl}
\TPFamily{T1}{cmr}{dcbxti}{bx}{it}
%</T1cmr>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Fibonacci}
%
%    Don Knuth's experiment.
%    \begin{macrocode}
%<*T1cmfib>
\DeclareFontFamily{T1}{cmfib}{}
\TPFamily{T1}{cmfib}{dcfib}{m}{n}
%</T1cmfib>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Funny (Roman)}
%
%    Another Don Knuth's experiment.
%    \begin{macrocode}
%<*T1cmfr>
\DeclareFontFamily{T1}{cmfr}{}
\TPFamily{T1}{cmfr}{dcff}{m}{n}
\TPFamily{T1}{cmfr}{dcfi}{m}{it}
%</T1cmfr>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Sans}
%
%    Don Knuth's sans serif font (normal, semibold and bold extended series).
%    \begin{macrocode}
%<*T1cmss>
\DeclareFontFamily{T1}{cmss}{}
\TPFamily{T1}{cmss}{dcss}{m}{n}
\DeclareFontShape{T1}{cmss}{m}{it}
      {<->sub*cmss/m/sl}{}
\TPFamily{T1}{cmss}{dcssi}{m}{sl}
\DeclareFontShape{T1}{cmss}{m}{sc}
       {<->sub*cmr/m/sc}{}
\TPFamily{T1}{cmss}{dcssdc}{sbc}{n}
\TPFamily{T1}{cmss}{dcssbx}{bx}{n}
%</T1cmss>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Typewriter}
%
%    \begin{macrocode}
%<*T1cmtt>
\DeclareFontFamily{T1}{cmtt}{\hyphenchar \font\m@ne}
\TPFamily{T1}{cmtt}{dctt}{m}{n}
\TPFamily{T1}{cmtt}{dcitt}{m}{it}
\TPFamily{T1}{cmtt}{dcsltt}{m}{sl}
\TPFamily{T1}{cmtt}{dctcsc}{m}{sc}
%</T1cmtt>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Dunhill}
%
%    \begin{macrocode}
%<*T1cmdh>
\DeclareFontFamily{T1}{cmdh}{}
\TPFamily{T1}{cmdh}{dcdunh}{m}{n}
%</T1cmdh>
%    \end{macrocode}
%
% \subsubsection{Concrete Roman}
%
%    \begin{macrocode}
%<*T1ccr>
\DeclareFontFamily{T1}{ccr}{}{}
\TPFamily{T1}{ccr}{dccr}{m}{n}
\TPFamily{T1}{ccr}{dcti}{m}{it}
\TPFamily{T1}{ccr}{dccsc}{m}{sc}
\TPFamily{T1}{ccr}{dcslc}{c}{sl}
\DeclareFontShape{T1}{ccr}{bx}{sl}{
%<-nowarn>     <->sub * cmr/bx/it
%<+nowarn>     <->ssub * cmr/bx/it
}{}
\DeclareFontShape{T1}{ccr}{bx}{n}{
%<-nowarn>     <->sub * cmr/bx/n
%<+nowarn>     <->ssub * cmr/bx/n
}{}
\DeclareFontShape{T1}{ccr}{bx}{it}{
%<-nowarn>     <->sub * cmr/bx/it
%<+nowarn>     <->ssub * cmr/bx/it
}{}
%</T1ccr>
%    \end{macrocode}
%
%  \subsection{Fonts with the old \TeX{} text encoding (\texttt{OT1})}
%
% \subsubsection{Computer Modern Roman (\texttt{OT1})}
%
%  M\&S: Beside the |OT1| encoding we also define the same family as |U|
%  encoded which is used for accepting old sources with stuff like
%  |\newmathalphabet| in it.
%    \begin{macrocode}
%<*OT1cmr,Ucmr>
%<+OT1cmr>\DeclareFontFamily{OT1}{cmr}{}
%<+Ucmr>\DeclareFontFamily{U}{cmr}{}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmr}{m}{n}
%<+Ucmr>\TPFamily{U}{cmr}{cmr}{m}{n}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmsl}{m}{sl}
%<+Ucmr>\TPFamily{U}{cmr}{cmsl}{m}{sl}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmti}{m}{it}
%<+Ucmr>\TPFamily{U}{cmr}{cmti}{m}{it}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmcsc}{m}{sc}
%<+Ucmr>\TPFamily{U}{cmr}{cmcsc}{m}{sc}
%    \end{macrocode}
%    M\&S: Here we try to cure the famous \$ $\to$ \pounds{} bug:
%    \begin{macrocode}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmu}{m}{ui}
%<+Ucmr>\TPFamily{U}{cmr}{cmu}{m}{ui}
%<+OT1cmr,Ucmr>%%%%%%% bold series
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmb}{b}{n}
%<+Ucmr>\TPFamily{U}{cmr}{cmb}{b}{n}
%<+OT1cmr,Ucmr>%%%%%%%% bold extended series
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbx}{bx}{n}
%<+Ucmr>\TPFamily{U}{cmr}{cmbx}{bx}{n}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbxsl}{bx}{sl}
%<+Ucmr>\TPFamily{U}{cmr}{cmbxsl}{bx}{sl}
%<+OT1cmr>\TPFamily{OT1}{cmr}{cmbxti}{bx}{it}
%<+Ucmr>\TPFamily{U}{cmr}{cmbxti}{bx}{it}
%<+OT1cmr>\DeclareFontShape{OT1}{cmr}{bx}{ui}
%<+Ucmr>\DeclareFontShape{U}{cmr}{bx}{ui}
%<+nowarn>	{<->sub * cmr/m/ui}{}
%<-nowarn>	{<->ssub * cmr/m/ui}{}
%</OT1cmr,Ucmr>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Sans (\texttt{OT1})}
%
%    \begin{macrocode}
%<*OT1cmss,Ucmss>
%<+OT1cmss>\DeclareFontFamily{OT1}{cmss}{}
%<+Ucmss>\DeclareFontFamily{U}{cmss}{}
%<+OT1cmss>\TPFamily{OT1}{cmss}{cmss}{m}{n}
%<+Ucmss>\TPFamily{U}{cmss}{cmss}{m}{n}
%<+OT1cmss,Ucmss>% Font undefined, therefore substituted
%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{it}
%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{it}
%<-nowarn>	{<->sub*cmss/m/sl}{}
%<+nowarn>	{<->ssub*cmss/m/sl}{}
%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssi}{m}{sl}
%<+Ucmss>\TPFamily{U}{cmss}{cmssi}{m}{sl}
%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{sc}
%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{sc}
       {<->sub*cmr/m/sc}{}
%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{m}{ui}
%<+Ucmss>\DeclareFontShape{U}{cmss}{m}{ui}
       {<->sub*cmr/m/ui}{}
%<+OT1cmss,Ucmss>%%%%%%%% semibold condensed series
%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssdc}{sbc}{n}
%<+Ucmss>\TPFamily{U}{cmss}{cmssdc}{sbc}{n}
%<+OT1cmss,Ucmss>%%%%%%%%% bold extended series
%<+OT1cmss>\TPFamily{OT1}{cmss}{cmssbx}{bx}{n}
%<+Ucmss>\TPFamily{U}{cmss}{cmssbx}{bx}{n}
%<+OT1cmss,Ucmss>%%%%%%% Font/shape undefined, therefore substituted
%<+OT1cmss>\DeclareFontShape{OT1}{cmss}{bx}{ui}
%<+Ucmss>\DeclareFontShape{U}{cmss}{bx}{ui}
       {<->sub*cmr/bx/ui}{}
%</OT1cmss,Ucmss>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Typewriter (\texttt{OT1})}
%
%   We use here no substitutions (outside the |cmtt| family), so the
%   discussion in the original |cmfonts.fdd| can be forgotten.
%    \begin{macrocode}
%<*OT1cmtt,Ucmtt>
%<+OT1cmtt>\DeclareFontFamily{OT1}{cmtt}{\hyphenchar \font\m@ne}
%<+Ucmtt>\DeclareFontFamily{U}{cmtt}{\hyphenchar \font\m@ne}
%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmtt}{m}{n}
%<+Ucmtt>\TPFamily{U}{cmtt}{cmtt}{m}{n}
%<+OT1cmtt,Ucmtt>%%%%%% make sure subst shapes are available
%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmitt}{m}{it}
%<+Ucmtt>\TPFamily{U}{cmtt}{cmitt}{m}{it}
%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmsltt}{m}{sl}
%<+Ucmtt>\TPFamily{U}{cmtt}{cmsltt}{m}{sl}
%<+OT1cmtt>\TPFamily{OT1}{cmtt}{cmtcsc}{m}{sc}
%<+Ucmtt>\TPFamily{U}{cmtt}{cmtcsc}{m}{sc}
%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{m}{ui}
%<+Ucmtt>\DeclareFontShape{U}{cmtt}{m}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{n}
%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{n}
%<-nowarn>  {<->sub * cmtt/m/n}{}
%<+nowarn>  {<->ssub * cmtt/m/n}{}
%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{it}
%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{it}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
%<+OT1cmtt>\DeclareFontShape{OT1}{cmtt}{bx}{ui}
%<+Ucmtt>\DeclareFontShape{U}{cmtt}{bx}{ui}
%<-nowarn>  {<->sub * cmtt/m/it}{}
%<+nowarn>  {<->ssub * cmtt/m/it}{}
%</OT1cmtt,Ucmtt>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Funny (\texttt{OT1})}
%
%    \begin{macrocode}
%<*OT1cmfr>
\DeclareFontFamily{OT1}{cmfr}{}
\TPFamily{OT1}{cmfr}{cmff}{m}{n}
\TPFamily{OT1}{cmfr}{cmfi}{m}{it}
%</OT1cmfr>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Dunhill (\texttt{OT1})}
%
%    \begin{macrocode}
%<*OT1cmdh>
\DeclareFontFamily{OT1}{cmdh}{}
\TPFamily{OT1}{cmdh}{cmdunh}{m}{n}
%</OT1cmdh>
%    \end{macrocode}
%
% \subsubsection{Computer Modern Fibonacci (\texttt{OT1})}
%
%    \begin{macrocode}
%<*OT1cmfib>
\DeclareFontFamily{OT1}{cmfib}{}
\TPFamily{OT1}{cmfib}{cmfib}{m}{n}
%</OT1cmfib>
%    \end{macrocode}
%
%  \subsection{Math fonts}
%
%  \subsubsection{Computer Modern Math italics}
%    \begin{macrocode}
%<*OMLcmm>
\DeclareFontFamily{OML}{cmm}{\skewchar\font'177}
\TPFamily{OML}{cmm}{cmmi}{m}{it}
\TPFamily{OML}{cmm}{cmmib}{b}{it}
\DeclareFontShape{OML}{cmm}{bx}{it}
   {<-> ssub * cmm/b/it}{}
%</OMLcmm>
%    \end{macrocode}
%
%  \subsubsection{Computer Modern Math symbols}
%
%    \begin{macrocode}
%<*OMScmsy>
\DeclareFontFamily{OMS}{cmsy}{\skewchar\font'60}
\TPFamily{OMS}{cmsy}{cmsy}{m}{n}
\TPFamily{OMS}{cmsy}{cmbsy}{b}{n}
%</OMScmsy>
%    \end{macrocode}
%
%  \subsubsection{Computer Modern large symbols}
%
%    \begin{macrocode}
%<*OMXcmex>
\DeclareFontFamily{OMX}{cmex}{}{}
\TPFamily{OMX}{cmex}{cmex}{m}{n}
%</OMXcmex>
%    \end{macrocode}
%    \begin{macrocode}
\endinput
%    \end{macrocode}
%
% \Finale
%