% \iffalse meta-comment
%
% Copyright (C) 1989--1993 by Frank Mittelbach, Rainer Schoepf.
% All rights reserved.
% 
% This file is part of the NFSS2 (New Font Selection Scheme) package.
% 
%  This package is distributed in the hope that it will be useful,
%  but WITHOUT ANY WARRANTY; without even the implied warranty of
%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
% 
% 
% IMPORTANT NOTICE:
% 
% For error reports in case of UNCHANGED versions see readme files.
% 
% Please do not request updates from us directly.  Distribution is
% done through Mail-Servers and TeX organizations.
% 
% You are not allowed to change this file.  You may however copy
% this file to a file with a different name and then change the copy
% if you obey the restrictions on file changes described in
% readme.mz.
% 
% You are allowed to distribute this file under the condition that
% it is distributed together with all files mentioned in readme.mz8.
% If you receive only some of these files from someone, complain!
% 
% You are NOT ALLOWED to distribute this file alone.  You are NOT
% ALLOWED to take money for the distribution or use of either this
% file or a changed version, except for a nominal charge for copying
% etc.
% \fi
\def\fileversion{4.2}
\def\filedate{93/11/01}
\def\docdate {93/05/02}
% \CheckSum{545}
%
%\iffalse        This is a META comment
%
% File `psfonts.dtx'.
% Copyright (C) 1993 Frank Mittelbach, Sebastian Rahtz and
%                    Rainer Sch"opf, all rights reserved.
%
%\fi
%
%
% \title{The {\tt psfonts.dtx} file\thanks
%         {This file has version number \fileversion, dated \filedate.
%                The documentation was last revised on \docdate}\\
%       for use with NFSS2}
% \author{Sebastian Rahtz}
%
% \MakeShortVerb{\|}
% \def\dst{{\csname mediumseries\endcsname\sc docstrip}}
% \setcounter{StandardModuleDepth}{1}
%
%
% \maketitle
%
% \section{Introduction}
%
% This file contains the external font information needed to load
% the standard PostScript fonts, and suitable style files to utilize them.
%
% From this file all {\tt.fd} files (font definition files) for the
% PostScript fonts with {\em old} encoding (|OT1|) for created, as well
% those with the new encoding (|T1|).
%
% \section{Customization}
% The usual customization will be to add support for additional combinations
% in this file, such as a derived bold slanted Times.
%
% \StopEventually{}
%
% \section{The {\tt docstrip} modules}
%
% The following modules are used to direct {\tt docstrip} in
% generating external |.fd| files:
% \begin{center}
% \begin{tabular}{ll}
%   driver & produce a documentation driver file \\
%   fd     & produce a font definition file \\[2pt]
% T1pag & Adobe AvantGarde (Cork encoding)\\
% T1pbk & Adobe Bookman (Cork encoding)\\
% T1pcr & Adobe Courier (Cork encoding)\\
% T1phv & Adobe Helvetica (Cork encoding)\\
% T1pnc & Adobe NewCenturySchoolbook (Cork encoding)\\
% T1ppl & Adobe Palatino (Cork encoding)\\
% T1ptm & Adobe Times Roman (Cork encoding)\\
% T1pzc & Adobe ZapfChancery (Cork encoding)\\[2pt]
% OT1pag & Adobe AvantGarde (old \TeX\ encoding)\\
% OT1pbk & Adobe Bookman (old \TeX\ encoding)\\
% OT1pcr & Adobe Courier (old \TeX\ encoding)\\
% OT1phv & Adobe Helvetica (old \TeX\ encoding)\\
% OT1pnc & Adobe NewCenturySchoolbook (old \TeX\ encoding)\\
% OT1ppl & Adobe Palatino (old \TeX\ encoding)\\
% OT1ptm & Adobe Times Roman (old \TeX\ encoding)\\
% OT1pzc & Adobe ZapfChancery (old \TeX\ encoding)\\[2pt]
% Upsy & Adobe Symbol \\
% Upzd & Adobe ZapfDingbats \\
% \end{tabular}
% \end{center}
% A typical {\tt docstrip} command file would then have entries like:
% \begin{verbatim}
%\generateFile{T1ptm.fd}{t}{\from{psfonts.dtx}{fd,T1ptm}}
%\end{verbatim}
%
%    
%  \section{The font definition files}
%
%    As always we begin by identifying the latest version of the files
%    in the {\sf log} file. The explicit spaces are necessary in an
%    |.fd| file and the |\string| guards against situations where |`|
%    is active.
%    \begin{macrocode}
%<*fd>
\wlog{Fontdef\space file\space produced\space from:\space
 \string`psfonts.dtx'\space \fileversion\space(\filedate)\space(SPQR)}
%</fd>
%
% \subsection{EC-encoded Adobe AvantGarde}
%
%<*T1pag>
\typeout{File\space T1pag.fd\space loading \space Adobe\space AvantGarde}%
\DeclareFontFamily{T1}{pag}{}%
\DeclareFontShape{T1}{pag}{m}{n}{<->pagkq}{}%
\DeclareFontShape{T1}{pag}{m}{it}{<->pagkoq}{}%
\DeclareFontShape{T1}{pag}{m}{sc}{<->pagkcq}{}%
\DeclareFontShape{T1}{pag}{b}{n}{<->pagdq}{}%
\DeclareFontShape{T1}{pag}{b}{it}{<->pagdoq}{}%
\DeclareFontShape{T1}{pag}{m}{sl}{<->sub * pag/m/it}{}%
\DeclareFontShape{T1}{pag}{b}{sc}{<->sub * pag/m/sc}{}%
\DeclareFontShape{T1}{pag}{b}{sl}{<->sub * pag/b/it}{}%
\DeclareFontShape{T1}{pag}{bx}{n}{<->sub * pag/b/n}{}%
\DeclareFontShape{T1}{pag}{bx}{it}{<->sub * pag/b/it}{}%
\DeclareFontShape{T1}{pag}{bx}{sc}{<->sub * pag/m/sc}{}%
\DeclareFontShape{T1}{pag}{bx}{sl}{<->sub * pag/m/sl}{}%
%</T1pag>
%
% \subsection{EC-encoded Adobe Bookman}
%
%<*T1pbk>     
\typeout{File\space T1pbk.fd\space loading \space Adobe\space Bookman}%
\DeclareFontFamily{T1}{pbk}{}%
\DeclareFontShape{T1}{pbk}{m}{n}{<->pbklq}{}%
\DeclareFontShape{T1}{pbk}{m}{it}{<->pbkliq}{}%
\DeclareFontShape{T1}{pbk}{b}{n}{<->pbkdq}{}%
\DeclareFontShape{T1}{pbk}{b}{it}{<->pbkdiq}{}%
\DeclareFontShape{T1}{pbk}{m}{sc}{<->pbklcq}{}%
\DeclareFontShape{T1}{pbk}{m}{sl}{<->pbkloq}{}%
\DeclareFontShape{T1}{pbk}{b}{sc}{<->sub * pbk/m/sc}{}%
\DeclareFontShape{T1}{pbk}{b}{sl}{<->sub * pbk/b/it}{}%
%</T1pbk>
%
%
% \subsection{EC-encoded Adobe Courier}
%
%<*T1pcr>
\typeout{File\space T1pcr.fd\space loading \space Adobe\space Courier}%
\DeclareFontFamily{T1}{pcr}{\hyphenchar \font\m@ne}%
\DeclareFontShape{T1}{pcr}{m}{n}{<->pcrrq}{}%
\DeclareFontShape{T1}{pcr}{m}{it}{<->pcrroq}{}%
\DeclareFontShape{T1}{pcr}{m}{sc}{<->pcrrcq}{}%
\DeclareFontShape{T1}{pcr}{b}{n}{<->pcrbq}{}%
\DeclareFontShape{T1}{pcr}{b}{it}{<->pcrboq}{}%
\DeclareFontShape{T1}{pcr}{m}{sl}{<->sub * pcr/m/it}{}%
\DeclareFontShape{T1}{pcr}{b}{sc}{<->sub * pcr/b/n}{}%
\DeclareFontShape{T1}{pcr}{b}{sc}{<->sub * pcr/m/sc}{}%
\DeclareFontShape{T1}{pcr}{b}{sl}{<->sub * pcr/b/it}{}%
\DeclareFontShape{T1}{pcr}{bx}{n}{<->sub * pcr/b/n}{}%
\DeclareFontShape{T1}{pcr}{bx}{it}{<->sub * pcr/b/it}{}%
\DeclareFontShape{T1}{pcr}{bx}{sc}{<->sub * pcr/m/sc}{}%
\DeclareFontShape{T1}{pcr}{bx}{sl}{<->sub * pcr/m/sl}{}%
%</T1pcr>
%
% \subsection{EC-encoded Adobe Helvetica}
%
%<*T1phv>
\typeout{File\space T1phv.fd\space loading \space Adobe\space Helvetica}%
\DeclareFontFamily{T1}{phv}{}%
\DeclareFontShape{T1}{phv}{m}{n}{<->phvrq}{}%
\DeclareFontShape{T1}{phv}{m}{it}{<->phvroq}{}%
\DeclareFontShape{T1}{phv}{m}{sc}{<->phvrcq}{}%
\DeclareFontShape{T1}{phv}{b}{n}{<->phvbq}{}%
\DeclareFontShape{T1}{phv}{b}{it}{<->phvboq}{}%
\DeclareFontShape{T1}{phv}{m}{sl}{<->sub * phv/m/it}{}%
\DeclareFontShape{T1}{phv}{b}{sc}{<->sub * phv/m/sc}{}%
\DeclareFontShape{T1}{phv}{b}{sl}{<->sub * phv/b/it}{}%
\DeclareFontShape{T1}{phv}{bx}{n}{<->sub * phv/b/n}{}%
\DeclareFontShape{T1}{phv}{bx}{it}{<->sub * phv/b/it}{}%
\DeclareFontShape{T1}{phv}{bx}{sc}{<->sub * phv/m/sc}{}%
\DeclareFontShape{T1}{phv}{bx}{sl}{<->sub * phv/m/sl}{}%
%</T1phv>
%
% \subsection{EC-encoded Adobe New Century Schoolbook}
%
%<*T1pnc>
\typeout{File\space T1pnc.fd\space loading \space Adobe\space NewCenturySchoolbook}%
\DeclareFontFamily{T1}{pnc}{}%
\DeclareFontShape{T1}{pnc}{m}{n}{<->pncrq}{}%
\DeclareFontShape{T1}{pnc}{m}{sc}{<->pncrcq}{}%
\DeclareFontShape{T1}{pnc}{m}{it}{<->pncriq}{}%
\DeclareFontShape{T1}{pnc}{m}{sl}{<->pncroq}{}%
\DeclareFontShape{T1}{pnc}{b}{n}{<->pncbq}{}%
\DeclareFontShape{T1}{pnc}{b}{it}{<->pncbiq}{}%
\DeclareFontShape{T1}{pnc}{b}{sc}{<->sub * pnc/m/sc}{}%
\DeclareFontShape{T1}{pnc}{b}{sl}{<->sub * pnc/b/it}{}%
\DeclareFontShape{T1}{pnc}{bx}{n}{<->sub * pnc/b/n}{}%
\DeclareFontShape{T1}{pnc}{bx}{it}{<->sub * pnc/b/it}{}%
\DeclareFontShape{T1}{pnc}{bx}{sc}{<->sub * pnc/m/sc}{}%
\DeclareFontShape{T1}{pnc}{bx}{sl}{<->sub * pnc/m/sl}{}%
%</T1pnc>
%
% \subsection{EC-encoded Adobe Palatino}
%
%<*T1ppl>     
\typeout{File\space T1ppl.fd\space loading \space Adobe\space Palatino}%
\DeclareFontFamily{T1}{ppl}{}%
\DeclareFontShape{T1}{ppl}{m}{n}{<->pplrq}{}%
\DeclareFontShape{T1}{ppl}{m}{it}{<->pplriq}{}%
\DeclareFontShape{T1}{ppl}{b}{n}{<->pplbq}{}%
\DeclareFontShape{T1}{ppl}{b}{it}{<->pplbiq}{}%
\DeclareFontShape{T1}{ppl}{m}{sc}{<->pplrcq}{}%
\DeclareFontShape{T1}{ppl}{m}{sl}{<->pplroq}{}%
\DeclareFontShape{T1}{ppl}{b}{sc}{<->sub * ppl/m/sc}{}%
\DeclareFontShape{T1}{ppl}{b}{sl}{<->sub * ppl/b/it}{}%
\DeclareFontShape{T1}{ppl}{bx}{n}{<->sub * ppl/b/n}{}%
\DeclareFontShape{T1}{ppl}{bx}{it}{<->sub * ppl/b/it}{}%
\DeclareFontShape{T1}{ppl}{bx}{sc}{<->sub * ppl/m/sc}{}%
\DeclareFontShape{T1}{ppl}{bx}{sl}{<->sub * ppl/m/sl}{}%
%</T1ppl>
%
%
% \subsection{EC-encoded Adobe Times Roman}
%
%<*T1ptm>
\typeout{File\space T1ptm.fd\space loading \space Adobe\space Times Roman}%
\DeclareFontFamily{T1}{ptm}{}%
\DeclareFontShape{T1}{ptm}{m}{n}{<->ptmrq}{}%
\DeclareFontShape{T1}{ptm}{m}{sc}{<->ptmrcq}{}% 
\DeclareFontShape{T1}{ptm}{m}{it}{<->ptmriq}{}%
\DeclareFontShape{T1}{ptm}{m}{sl}{<->ptmroq}{}%
\DeclareFontShape{T1}{ptm}{b}{n}{<->ptmbq}{}%
\DeclareFontShape{T1}{ptm}{b}{it}{<->ptmbiq}{}%
\DeclareFontShape{T1}{ptm}{b}{sc}{<->sub * ptm/m/sc}{}%
\DeclareFontShape{T1}{ptm}{b}{sl}{<->sub * ptm/b/it}{}%
\DeclareFontShape{T1}{ptm}{bx}{n}{<->sub * ptm/b/n}{}%
\DeclareFontShape{T1}{ptm}{bx}{it}{<->sub * ptm/b/it}{}%
\DeclareFontShape{T1}{ptm}{bx}{sc}{<->sub * ptm/m/sc}{}%
\DeclareFontShape{T1}{ptm}{bx}{sl}{<->sub * ptm/m/sl}{}%
%</T1ptm>
%
% \subsection{EC-encoded Adobe Zapf Chancery}
%<*T1pzc>     
\typeout{File\space T1pzc.fd\space loading \space Adobe\space ZapfChancery}%
\DeclareFontFamily{T1}{pzc}{}%
\DeclareFontShape{T1}{pzc}{m}{it}{<->pzcmiq}{}%
\DeclareFontShape{T1}{pzc}{m}{n}{<->sub * pzc/m/it}{}%
\DeclareFontShape{T1}{pzc}{m}{sl}{<->sub * pzc/m/it}{}%
\DeclareFontShape{T1}{pzc}{b}{n}{<->sub * pzc/m/it}{}%
\DeclareFontShape{T1}{pzc}{b}{it}{<->sub * pzc/m/it}{}%
\DeclareFontShape{T1}{pzc}{b}{sc}{<->sub * pzc/m/n}{}%
\DeclareFontShape{T1}{pzc}{m}{sc}{<->sub * pzc/m/n}{}%
\DeclareFontShape{T1}{pzc}{b}{sl}{<->sub * pzc/b/n}{}%
%</T1pzc>
% \subsection{Old \TeX-encoded Adobe AvantGarde}
%<*OT1pag>
\typeout{File \space OT1pag.fd\space loading \space Adobe\space AvantGarde}%
\DeclareFontFamily{OT1}{pag}{}%
\DeclareFontShape{OT1}{pag}{m}{n}{<->pagk}{}%
\DeclareFontShape{OT1}{pag}{m}{it}{<->pagko}{}%
\DeclareFontShape{OT1}{pag}{m}{sc}{<->pagkc}{}%
\DeclareFontShape{OT1}{pag}{b}{n}{<->pagd}{}%
\DeclareFontShape{OT1}{pag}{b}{it}{<->pagdo}{}%
\DeclareFontShape{OT1}{pag}{m}{sl}{<->sub * pag/m/it}{}%
\DeclareFontShape{OT1}{pag}{b}{sc}{<->sub * pag/m/sc}{}%
\DeclareFontShape{OT1}{pag}{b}{sl}{<->sub * pag/b/it}{}%
\DeclareFontShape{OT1}{pag}{bx}{n}{<->sub * pag/b/n}{}%
\DeclareFontShape{OT1}{pag}{bx}{it}{<->sub * pag/b/it}{}%
\DeclareFontShape{OT1}{pag}{bx}{sc}{<->sub * pag/m/sc}{}%
\DeclareFontShape{OT1}{pag}{bx}{sl}{<->sub * pag/m/sl}{}%
%</OT1pag>
%
% \subsection{Old \TeX-encoded Adobe Bookman}
%
%<*OT1pbk>     
\typeout{File \space OT1pbk.fd\space loading \space Adobe\space Bookman}%
\DeclareFontFamily{OT1}{pbk}{}%
\DeclareFontShape{OT1}{pbk}{m}{n}{<->pbkl}{}%
\DeclareFontShape{OT1}{pbk}{m}{it}{<->pbkli}{}%
\DeclareFontShape{OT1}{pbk}{b}{n}{<->pbkd}{}%
\DeclareFontShape{OT1}{pbk}{b}{it}{<->pbkdi}{}%
\DeclareFontShape{OT1}{pbk}{m}{sc}{<->pbklc}{}%
\DeclareFontShape{OT1}{pbk}{m}{sl}{<->pbklo}{}%
\DeclareFontShape{OT1}{pbk}{b}{sc}{<->sub * pbk/m/sc}{}%
\DeclareFontShape{OT1}{pbk}{b}{sl}{<->sub * pbk/b/it}{}%
%</OT1pbk>
%
%
% \subsection{Old \TeX-encoded Adobe Courier}
%
%<*OT1pcr>
\typeout{File \space OT1pcr.fd\space loading \space Adobe\space Courier}%
\DeclareFontFamily{OT1}{pcr}{\hyphenchar \font\m@ne}%
\DeclareFontShape{OT1}{pcr}{m}{n}{<->pcrr}{}%
\DeclareFontShape{OT1}{pcr}{m}{it}{<->pcrro}{}%
\DeclareFontShape{OT1}{pcr}{m}{sc}{<->pcrrc}{}%
\DeclareFontShape{OT1}{pcr}{b}{n}{<->pcrb}{}%
\DeclareFontShape{OT1}{pcr}{b}{it}{<->pcrbo}{}%
\DeclareFontShape{OT1}{pcr}{m}{sl}{<->sub * pcr/m/it}{}%
\DeclareFontShape{OT1}{pcr}{b}{sc}{<->sub * pcr/b/n}{}%
\DeclareFontShape{OT1}{pcr}{b}{sc}{<->sub * pcr/m/sc}{}%
\DeclareFontShape{OT1}{pcr}{b}{sl}{<->sub * pcr/b/it}{}%
\DeclareFontShape{OT1}{pcr}{bx}{n}{<->sub * pcr/b/n}{}%
\DeclareFontShape{OT1}{pcr}{bx}{it}{<->sub * pcr/b/it}{}%
\DeclareFontShape{OT1}{pcr}{bx}{sc}{<->sub * pcr/m/sc}{}%
\DeclareFontShape{OT1}{pcr}{bx}{sl}{<->sub * pcr/m/sl}{}%
%</OT1pcr>
%
% \subsection{Old \TeX-encoded Adobe Helvetica}
%
%<*OT1phv>
\typeout{File \space OT1phv.fd\space loading \space Adobe\space Helvetica}%
\DeclareFontFamily{OT1}{phv}{}%
\DeclareFontShape{OT1}{phv}{m}{n}{<->phvr}{}%
\DeclareFontShape{OT1}{phv}{m}{it}{<->phvro}{}%
\DeclareFontShape{OT1}{phv}{m}{sc}{<->phvrc}{}%
\DeclareFontShape{OT1}{phv}{b}{n}{<->phvb}{}%
\DeclareFontShape{OT1}{phv}{b}{it}{<->phvbo}{}%
\DeclareFontShape{OT1}{phv}{m}{sl}{<->sub * phv/m/it}{}%
\DeclareFontShape{OT1}{phv}{b}{sc}{<->sub * phv/m/sc}{}%
\DeclareFontShape{OT1}{phv}{b}{sl}{<->sub * phv/b/it}{}%
\DeclareFontShape{OT1}{phv}{bx}{n}{<->sub * phv/b/n}{}%
\DeclareFontShape{OT1}{phv}{bx}{it}{<->sub * phv/b/it}{}%
\DeclareFontShape{OT1}{phv}{bx}{sc}{<->sub * phv/m/sc}{}%
\DeclareFontShape{OT1}{phv}{bx}{sl}{<->sub * phv/m/sl}{}%
%</OT1phv>
%
% \subsection{Old \TeX-encoded Adobe New Century Schoolbook}
%
%<*OT1pnc>
\typeout{File \space OT1pnc.fd\space loading \space Adobe\space NewCenturySchoolbook}%
\DeclareFontFamily{OT1}{pnc}{}%
\DeclareFontShape{OT1}{pnc}{m}{n}{<->pncr}{}%
\DeclareFontShape{OT1}{pnc}{m}{sc}{<->pncrc}{}%
\DeclareFontShape{OT1}{pnc}{m}{it}{<->pncri}{}%
\DeclareFontShape{OT1}{pnc}{m}{sl}{<->pncro}{}%
\DeclareFontShape{OT1}{pnc}{b}{n}{<->pncb}{}%
\DeclareFontShape{OT1}{pnc}{b}{it}{<->pncbi}{}%
\DeclareFontShape{OT1}{pnc}{b}{sc}{<->sub * pnc/m/sc}{}%
\DeclareFontShape{OT1}{pnc}{b}{sl}{<->sub * pnc/b/it}{}%
\DeclareFontShape{OT1}{pnc}{bx}{n}{<->sub * pnc/b/n}{}%
\DeclareFontShape{OT1}{pnc}{bx}{it}{<->sub * pnc/b/it}{}%
\DeclareFontShape{OT1}{pnc}{bx}{sc}{<->sub * pnc/m/sc}{}%
\DeclareFontShape{OT1}{pnc}{bx}{sl}{<->sub * pnc/m/sl}{}%
%</OT1pnc>
%
% \subsection{Old \TeX-encoded Adobe Palatino}
%
%<*OT1ppl>     
\typeout{File \space OT1ppl.fd\space loading \space Adobe\space Palatino}%
\DeclareFontFamily{OT1}{ppl}{}%
\DeclareFontShape{OT1}{ppl}{m}{n}{<->pplr}{}%
\DeclareFontShape{OT1}{ppl}{m}{it}{<->pplri}{}%
\DeclareFontShape{OT1}{ppl}{b}{n}{<->pplb}{}%
\DeclareFontShape{OT1}{ppl}{b}{it}{<->pplbi}{}%
\DeclareFontShape{OT1}{ppl}{m}{sc}{<->pplrc}{}%
\DeclareFontShape{OT1}{ppl}{m}{sl}{<->pplro}{}%
\DeclareFontShape{OT1}{ppl}{b}{sc}{<->sub * ppl/m/sc}{}%
\DeclareFontShape{OT1}{ppl}{b}{sl}{<->sub * ppl/b/it}{}%
\DeclareFontShape{OT1}{ppl}{bx}{n}{<->sub * ppl/b/n}{}%
\DeclareFontShape{OT1}{ppl}{bx}{it}{<->sub * ppl/b/it}{}%
\DeclareFontShape{OT1}{ppl}{bx}{sc}{<->sub * ppl/m/sc}{}%
\DeclareFontShape{OT1}{ppl}{bx}{sl}{<->sub * ppl/m/sl}{}%
%</OT1ppl>
%
%
% \subsection{Old \TeX-encoded Adobe Times Roman}
%
%<*OT1ptm>
\typeout{File \space OT1ptm.fd\space loading \space Adobe\space Times Roman}%
\DeclareFontFamily{OT1}{ptm}{}%
\DeclareFontShape{OT1}{ptm}{m}{n}{<->ptmr}{}%
\DeclareFontShape{OT1}{ptm}{m}{sc}{<->ptmrc}{}% 
\DeclareFontShape{OT1}{ptm}{m}{it}{<->ptmri}{}%
\DeclareFontShape{OT1}{ptm}{m}{sl}{<->ptmro}{}%
\DeclareFontShape{OT1}{ptm}{b}{n}{<->ptmb}{}%
\DeclareFontShape{OT1}{ptm}{b}{it}{<->ptmbi}{}%
\DeclareFontShape{OT1}{ptm}{b}{sc}{<->sub * ptm/m/sc}{}%
\DeclareFontShape{OT1}{ptm}{b}{sl}{<->sub * ptm/b/it}{}%
\DeclareFontShape{OT1}{ptm}{bx}{n}{<->sub * ptm/b/n}{}%
\DeclareFontShape{OT1}{ptm}{bx}{it}{<->sub * ptm/b/it}{}%
\DeclareFontShape{OT1}{ptm}{bx}{sc}{<->sub * ptm/m/sc}{}%
\DeclareFontShape{OT1}{ptm}{bx}{sl}{<->sub * ptm/m/sl}{}%
%</OT1ptm>
%
% \subsection{Old \TeX-encoded Adobe Zapf Chancery}
%<*OT1pzc>     
\typeout{File \space OT1pzc.fd\space loading \space Adobe\space ZapfChancery}%
\DeclareFontFamily{OT1}{pzc}{}%
\DeclareFontShape{OT1}{pzc}{m}{it}{<->pzcmi}{}%
\DeclareFontShape{OT1}{pzc}{m}{n}{<->sub * pzc/m/it}{}%
\DeclareFontShape{OT1}{pzc}{m}{sl}{<->sub * pzc/m/it}{}%
\DeclareFontShape{OT1}{pzc}{b}{n}{<->sub * pzc/m/it}{}%
\DeclareFontShape{OT1}{pzc}{b}{it}{<->sub * pzc/m/it}{}%
\DeclareFontShape{OT1}{pzc}{b}{sc}{<->sub * pzc/m/n}{}%
\DeclareFontShape{OT1}{pzc}{m}{sc}{<->sub * pzc/m/n}{}%
\DeclareFontShape{OT1}{pzc}{b}{sl}{<->sub * pzc/b/n}{}%
%</OT1pzc>
%
% \subsection{Adobe Symbol font}
%<*Upsy>     
\typeout{File \space Upsy.fd\space loading \space Adobe\space Symbol}%
\DeclareFontFamily{U}{psy}{}%
\DeclareFontShape{U}{psy}{m}{n}{<->psyr}{}%
\DeclareFontShape{U}{psy}{m}{i}{<->sub * psy/m/n}{}%
%</Upsy>
% \subsection{Adobe Dingbats}
%<*Upzd>     
\typeout{File \space Upzd.fd\space loading \space Adobe\space ZapfDingbats}%
\DeclareFontFamily{U}{pzd}{}%
\DeclareFontShape{U}{pzd}{m}{n}{<->pzdr}{}%
%</Upzd>
% \section{Style files for PostScript fonts}
%<*style>
%  For the style file we have to make sure that it runs under NFSS
% release 2, so we check for appropriate command names.
%    \begin{macrocode}
\@ifundefined{DeclareFontShape}
     {\@ifundefined{selectfont}
        {\@latexerr{This style option can only be used
                    with the new^^Jfont selection scheme}\@eha}
        {\@latexerr{This style option can only be used
                    with the new^^Jfont selection scheme *release 2*}
                   {Your format contains NFSS release 1, but this style
                    option was^^Jdeveloped for release 2.}
        }
      \endinput}
     {}
\immediate\write\sixt@@n{NFSS2 \fileversion\space <\filedate> (SPQR)}
%</style>
%
%<*nftimes>
\immediate\write\sixt@@n{File: `nftimes.sty' }
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ptm}
\renewcommand{\ttdefault}{pcr}
\def\bfdefault{b}

%</nftimes>
%<*nfpalat>
\immediate\write\sixt@@n{File: `nfpalat.sty' }
\renewcommand{\sfdefault}{phv}
\renewcommand{\rmdefault}{ppl}
\renewcommand{\ttdefault}{pcr}
\def\bfdefault{b}

%</nfpalat>
%<*nfhelve>
\immediate\write\sixt@@n{File: `nfhelve.sty' }
\renewcommand{\sfdefault}{phv}
\def\bfdefault{b}

%</nfhelve>
%<*nfavant>
\immediate\write\sixt@@n{File: `nfavant.sty' }
\renewcommand{\sfdefault}{pag}
\def\bfdefault{b}

%</nfavant>
%<*nfnewce>
\immediate\write\sixt@@n{File: `nfnewce.sty' }
\renewcommand{\sfdefault}{pag}
\renewcommand{\rmdefault}{pnc}
\renewcommand{\ttdefault}{pcr}
\def\bfdefault{b}

%</nfnewce>
%<*nfbookm>
\immediate\write\sixt@@n{File: `nfbookm.sty' }
\renewcommand{\sfdefault}{pbk}
\renewcommand{\rmdefault}{pag}
\renewcommand{\ttdefault}{pcr}
\def\bfdefault{b}

%</nfbookm>
%<*nfpi>
% Now some useful commands for Pi fonts (Dingbats, Symbol etc); they
% all assume you know the character number of the (unmapped) font
%
\newcommand{\Pifont}[1]{\fontfamily{#1}\fontencoding{U}%
\fontseries{m}\fontshape{n}\selectfont}
%------------------------------------------------------------------
\newcommand{\Pisymbol}[2]{{\Pifont{#1}\char#2}}
% 
\newcommand{\Pifill}[2]{\leaders\hbox{\makebox[0.2in]{%
\Pisymbol{#1}{#2}}}\hfill}
%
\newcommand{\Piline}[2]{\par\hspace{0.5in}\Pifill{#1}{#2}\hspace{0.5in}\par}
% 
\newenvironment{Pilist}[2]%
{\begin{list}{\Pisymbol{#1}{#2}}{}}%
{\end{list}}%
%
% A Pi number generator (from ideas by David Carlisle), for use in
% lists where items are suffixed by symbols taken in sequence from a
% Pi font. usage is in lists just like enumerate.
%
% \Pinumber outputs the appropriate symbol, where #2 is the name of a
% LaTeX counter  and #1 is the font family
\def\Pinumber#1#2{\protect\p@Pinumber{#1}{\arabic{#2}}}
\def\p@Pinumber#1#2{%
{\let\noexpand\relax\relax\noexpand\Pisymbol{#1}{#2}}}
%------------------------------------------------------------------
\newenvironment{Piautolist}[2]{%
\ifnum \@enumdepth >3 \@toodeep\else
      \advance\@enumdepth \@ne
% we force the labels and cross-references into a very plain style (eg
% no brackets around `numbers', or dots after them
      \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
  \expandafter\def\csname p@enum\romannumeral\the\@enumdepth\endcsname{}%
  \expandafter\def\csname labelenum\romannumeral\the\@enumdepth\endcsname{%
     \csname theenum\romannumeral\the\@enumdepth\endcsname}%
  \expandafter\def\csname theenum\romannumeral\the\@enumdepth\endcsname{%
     \Pinumber{#1}{enum\romannumeral\the\@enumdepth}}%
  \list{\csname label\@enumctr\endcsname}{
        \@nmbrlisttrue\def\@listctr{\@enumctr}\setcounter{\@enumctr}{#2}
        \addtocounter{\@enumctr}{-1}%
        \def\makelabel##1{\hss\llap{##1}}}
\fi}

\let\endPiautolist\endlist
%
% all the old commands still work
%
\newcommand{\ding}{\Pisymbol{pzd}}
\def\dingfill#1{\leaders\hbox{\makebox[0.2in]{\Pisymbol{pzd}{#1}}}\hfill}
\def\dingline#1{\Piline{pzd}{#1}}
\newenvironment{dinglist}[1]{\begin{Pilist}{pzd}{#1}}%
  {\end{Pilist}}
\newenvironment{dingautolist}[1]{\begin{Piautolist}{pzd}{#1}}%
  {\end{Piautolist}}
%
{\Pifont{pzd}}
{\Pifont{psy}}
%</nfpi>
%<*chancery>
\immediate\write\sixt@@n{File: `chancer3.sty' }
\renewcommand{\rmdefault}{chancery}

%</chancery>
%<*OT1>
\def\encodingdefault{OT1}% 
\fontencoding{OT1}% 
\RokickiExtras
\selectfont
%</OT1>
%<*T1>
\def\encodingdefault{T1}% 
\fontencoding{T1}% 
\selectfont
%</T1>
%
%    \end{macrocode}
% \Finale
\endinput

% \section{A driver for this document}
%
% The next bit of code contains the documentation driver file for
% \TeX{}, i.e., the file that will produce the documentation you are
% currently reading. It will be extracted from this file by the 
% \dst{} program.
%    \begin{macrocode}
%<*driver>
\documentstyle[doc]{article}

% dimensions from ltugboat.sty:

\setlength\textwidth{31pc} 
\setlength\textheight{54pc}
\setlength{\parindent}{0pt}
\setlength{\parskip}{2pt plus 1pt minus 1pt}
\setlength{\oddsidemargin}{8pc} 
\setlength{\marginparwidth}{8pc}
\setlength{\topmargin}{-2.5pc} 
\setlength{\headsep}{20pt}
\setlength{\columnsep}{1.5pc} 
\setlength{\columnwidth}{18.75pc}

\DisableCrossrefs

\CodelineIndex     % Index code by line number

%\OnlyDescription  % comment out for implementation details

\begin{document}
   \DocInput{psfonts.dtx}
\end{document}
%</driver>
%    \end{macrocode}
%
%
%    The next line goes into all files and in addition prevents \dst{}
%    from adding any further code from the main source file (such as a
%    character table.
%    \begin{macrocode}
\endinput
%    \end{macrocode}
%
% \DeleteShortVerb{\|}
%
% \Finale
%
%% \CharacterTable
%%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%%   Digits        \0\1\2\3\4\5\6\7\8\9
%%   Exclamation   \!     Double quote  \"     Hash (number) \#
%%   Dollar        \$     Percent       \%     Ampersand     \&
%%   Acute accent  \'     Left paren    \(     Right paren   \)
%%   Asterisk      \*     Plus          \+     Comma         \,
%%   Minus         \-     Point         \.     Solidus       \/
%%   Colon         \:     Semicolon     \;     Less than     \<
%%   Equals        \=     Greater than  \>     Question mark \?
%%   Commercial at \@     Left bracket  \[     Backslash     \\
%%   Right bracket \]     Circumflex    \^     Underscore    \_
%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
%%   Right brace   \}     Tilde         \~}
