The psfonts package^{∗}

Sebastian Rahtz S.Rahtz@elsevier.co.uk

1997/01/23

1 Introduction

This file contains suitable package files to load the standard PostScript fonts. The font definition files and font metrics are available in both T1 and OT1 form in the companion CTAN fonts/psfonts collection.

2 The docstrip modules

2.1 Adobe Symbol font

1 ⟨∗Upsy⟩

 2 \typeout{File \space upsy.fd\space loading \space Adobe\space Symbol}%
 3 \DeclareFontFamily{U}{psy}{}%
 4 \DeclareFontShape{U}{psy}{m}{n}{<->psyr}{}%
 5 \DeclareFontShape{U}{psy}{m}{i}{<->ssub * psy/m/n}{}%

6 ⟨/Upsy⟩

2.2 Adobe Zapf Dingbats

7 ⟨∗Upzd⟩

 8 \typeout{File \space upzd.fd\space loading \space Adobe\space ZapfDingbats}%
 9 \DeclareFontFamily{U}{pzd}{}%
10 \DeclareFontShape{U}{pzd}{m}{n}{<->pzdr}{}%

11 ⟨/Upzd⟩

3 Package files for PostScript fonts

12 ⟨∗times⟩

13 \NeedsTeXFormat{LaTeX2e}
14 \ProvidesPackage{times}[\filedate\space\fileversion\space
15 Times PSNFSS2e package]
16 \renewcommand{\sfdefault}{phv}
17 \renewcommand{\rmdefault}{ptm}
18 \renewcommand{\ttdefault}{pcr}

19 ⟨/times⟩ 20 ⟨∗palatino⟩

21 \NeedsTeXFormat{LaTeX2e}

∗This file has version number 6.0, last revised 1997/01/23.

22 \ProvidesPackage{palatino}[\filedate\space\fileversion\space
23 Palatino PSNFSS2e package]
24 \renewcommand{\rmdefault}{ppl}
25 \renewcommand{\sfdefault}{phv}
26 \renewcommand{\ttdefault}{pcr}

27 ⟨/palatino⟩ 28 ⟨∗helvet⟩

29 \NeedsTeXFormat{LaTeX2e}
30 \ProvidesPackage{helvet}[\filedate\space\fileversion\space
31 Helvetica PSNFSS2e package]
32 \renewcommand{\sfdefault}{phv}

33 ⟨/helvet⟩ 34 ⟨∗avant⟩

35 \NeedsTeXFormat{LaTeX2e}
36 \ProvidesPackage{avant}[\filedate\space\fileversion\space
37 AvantGarde PSNFSS2e package]
38 \renewcommand{\sfdefault}{pag}

39 ⟨/avant⟩ 40 ⟨∗newcent⟩

41 \NeedsTeXFormat{LaTeX2e}
42 \ProvidesPackage{newcent}[\filedate\space\fileversion\space
43 NewCenturySchoolbook PSNFSS2e package]
44 \renewcommand{\rmdefault}{pnc}
45 \renewcommand{\sfdefault}{pag}
46 \renewcommand{\ttdefault}{pcr}

47 ⟨/newcent⟩ 48 ⟨∗bookman⟩

49 \NeedsTeXFormat{LaTeX2e}
50 \ProvidesPackage{bookman}[\filedate\space\fileversion\space
51 Bookman PSNFSS2e package]
52 \renewcommand{\rmdefault}{pbk}
53 \renewcommand{\sfdefault}{pag}
54 \renewcommand{\ttdefault}{pcr}

55 ⟨/bookman⟩ 56 ⟨∗pifont⟩

57 \NeedsTeXFormat{LaTeX2e}
58 \ProvidesPackage{pifont}[\filedate\space\fileversion\space
59 Pi font PSNFSS2e package]

Now some useful commands for Pi fonts (Dingbats, Symbol etc); they all assume you know the character number of the (unmapped) font

60 \newcommand{\Pifont}[1]{\fontfamily{#1}\fontencoding{U}%
61 \fontseries{m}\fontshape{n}\selectfont}
62 \newcommand{\Pisymbol}[2]{{\Pifont{#1}\char#2}}
63 \newcommand{\Pifill}[2]{\leaders\hbox{\makebox[0.2in]{%
64  \Pisymbol{#1}{#2}}}\hfill\kern\z@}
65 \newcommand{\Piline}[2]{\par\noindent\hspace{0.5in}\Pifill{#1}{#2}%
66  \hspace{0.5in}\kern\z@\par}
67 \newenvironment{Pilist}[2]%
68 {\begin{list}{\Pisymbol{#1}{#2}}{}}%
69 {\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 L^{A}TEX counter and #1 is the font family.

70 \def\Pinumber#1#2{\protect\Pisymbol{#1}{\arabic{#2}}}
71 \newenvironment{Piautolist}[2]{%
72 \ifnum \@enumdepth >3 \@toodeep\else
73  \advance\@enumdepth \@ne

We force the labels and cross-references into a very plain style (eg no brackets around ‘numbers’, or dots after them).

74  \edef\@enumctr{enum\romannumeral\the\@enumdepth}%
75 \expandafter\def\csname p@enum\romannumeral\the\@enumdepth\endcsname{}%
76 \expandafter\def\csname labelenum\romannumeral\the\@enumdepth\endcsname{%
77  \csname theenum\romannumeral\the\@enumdepth\endcsname}%
78 \expandafter\def\csname theenum\romannumeral\the\@enumdepth\endcsname{%
79  \Pinumber{#1}{enum\romannumeral\the\@enumdepth}}%
80 \list{\csname label\@enumctr\endcsname}{%
81  \@nmbrlisttrue
82  \def\@listctr{\@enumctr}%
83  \setcounter{\@enumctr}{#2}%
84  \addtocounter{\@enumctr}{-1}%
85  \def\makelabel##1{\hss\llap{##1}}}
86 \fi
87 }{\endlist}

All the old Dingbat commands still work.

88 \newcommand{\ding}{\Pisymbol{pzd}}
89 \def\dingfill#1{\leaders\hbox{\makebox[0.2in]{\Pisymbol{pzd}{#1}}}\hfill}
90 \def\dingline#1{\Piline{pzd}{#1}}
91 \newenvironment{dinglist}[1]{\begin{Pilist}{pzd}{#1}}%
92 {\end{Pilist}}
93 \newenvironment{dingautolist}[1]{\begin{Piautolist}{pzd}{#1}}%
94 {\end{Piautolist}}
95 {\Pifont{pzd}}
96 {\Pifont{psy}}

97 ⟨/pifont⟩ 98 ⟨∗chancery⟩

99 \NeedsTeXFormat{LaTeX2e}
100 \ProvidesPackage{chancery}[\filedate\space\fileversion\space
101 Zapf Chancery PSNFSS2e package]
102 \renewcommand{\rmdefault}{pzc}

103 ⟨/chancery⟩ 104 ⟨∗mathptm⟩

105 \NeedsTeXFormat{LaTeX2e}
106 \ProvidesPackage{mathptm}[\filedate{} Times + math package from fontinst]

This package loads the Adobe Times fonts and the mathptm fonts; The virtual fonts are produced by fontinst; they can be built by running tex on fontptcm.tex from the fontinst package.

107 % The main text family is Times Roman
108 \def\rmdefault{ptm}
109 \DeclareSymbolFont{operators}   {OT1}{ptmcm}{m}{n}
110 \DeclareSymbolFont{letters}     {OML}{ptmcm}{m}{it}
111 \DeclareSymbolFont{symbols}     {OMS}{pzccm}{m}{n}
112 \DeclareSymbolFont{largesymbols}{OMX}{psycm}{m}{n}
113 \DeclareSymbolFont{bold}        {OT1}{ptm}{bx}{n}
114 \DeclareSymbolFont{italic}      {OT1}{ptm}{m}{it}

If we’re in compatibility mode, defined \mathbf and \mathit.

115 \@ifundefined{mathbf}{}{\DeclareMathAlphabet{\mathbf}{OT1}{ptm}{bx}{n}}
116 \@ifundefined{mathit}{}{\DeclareMathAlphabet{\mathit}{OT1}{ptm}{m}{it}}

An \omicron command, to fill the gap.

117 \DeclareMathSymbol{\omicron}{0}{operators}{`\o}

Reduce the space around math operators

118 \thinmuskip=2mu
119 \medmuskip=2.5mu plus 1mu minus 1mu
120 \thickmuskip=4mu plus 1.5mu minus 1mu

No bold math.

121 \let\@tempa\version@elt
122  \def\version@elt#1{%
123  \ifx\mv@bold#1\else\noexpand\version@elt\noexpand#1\fi}
124  \edef\version@list{\version@list}
125 \let\version@elt\@tempa
126 \let\mv@bold\@undefined
127 \def\boldmath{%
128 \PackageWarning{there is no bold Symbol font}%
129 \global\let\boldmath=\relax

130 }

131 \DeclareMathSizes{5}{5}{5}{5}
132 \DeclareMathSizes{6}{6}{5}{5}
133 \DeclareMathSizes{7}{7}{5}{5}
134 \DeclareMathSizes{8}{8}{6}{5}
135 \DeclareMathSizes{9}{9}{7}{5}
136 \DeclareMathSizes{10}{10}{7.4}{6}
137 \DeclareMathSizes{10.95}{10.95}{8}{6}
138 \DeclareMathSizes{12}{12}{9}{7}
139 \DeclareMathSizes{14.4}{14.4}{10.95}{8}
140 \DeclareMathSizes{17.28}{17.28}{12}{10}
141 \DeclareMathSizes{20.74}{20.74}{14.4}{12}
142 \DeclareMathSizes{24.88}{24.88}{17.28}{14.4}

143 ⟨/mathptm⟩