[texhax] Question on fontdimen
Michael Doob
mdoob at cc.umanitoba.ca
Thu Dec 22 22:41:13 CET 2005
On Thursday 22 December 2005 2:34 pm, Michael Barr wrote:
> Can someone tell me what is happening here? The fragment
>
> \newdimen\axis
> \axis=\fontdimen22\textfont2
>
> gives an error message:
>
> ! Font \nullfont has only 7 fontdimen parameters.
> l.3 \axis=\fontdimen22\textfont2
>
> If I modify it as follows:
>
> \makeatletter
> \check at mathfonts
> \makeatother
> \newdimen\axis
> \axis=\fontdimen22\textfont2
>
> it works as expected. I do not even recall where I got \check at mathfonts
> from.
>
>
Actually if you insert
$\null$
before the \newdimen line you'll be OK. Looking at the log file
in the two cases reveals:
< LaTeX Font Info: External font `cmex10' loaded for size
< (Font) <7> on input line 3.
< LaTeX Font Info: External font `cmex10' loaded for size
< (Font) <5> on input line 3.
as part of the successful run, so the loading of the fonts clearly
has a role. In fact, in Appendex F of the TeXbook:
Math symbol fonts(i.e., fonts in family 2) are required to have at least
22 \fontdimen parameters instead of the usual seven; similarly, math
extension fonts must have at least 13.The significance of these additional
parameters is explained in Appendix G. If you want to inccrease thenumber
of parameters past the number that actually appear in a font's metric
information file, you can assign new values immediately after that font
has been loaded.
In fact, for cmsy10, tftopl shows
(FONTDIMEN
(SLANT R 0.25)
(SPACE R 0.0)
(STRETCH R 0.0)
(SHRINK R 0.0)
(XHEIGHT R 0.430555)
(QUAD R 1.000003)
(EXTRASPACE R 0.0)
(NUM1 R 0.676508)
(NUM2 R 0.393732)
(NUM3 R 0.443731)
(DENOM1 R 0.685951)
(DENOM2 R 0.344841)
(SUP1 R 0.412892)
(SUP2 R 0.362892)
(SUP3 R 0.288889)
(SUB1 R 0.15)
(SUB2 R 0.247217)
(SUPDROP R 0.386108)
(SUBDROP R 0.05)
(DELIM1 R 2.389999)
(DELIM2 R 1.01)
(AXISHEIGHT R 0.25)
)
and so all 22 \fontdimen parameters are present once the tfm file
has been loaded into memory.
This leaves only one possibility: the file hasn't been loaded
when you do the \axis assignment.
If you add \tracingfonts=4 to your file, you'll get all the
info you want, and, perhaps, much more.
Cheers,
Michael
--
------------------------------------------------------------------
Michael Doob Telephone: (204) 474-9796
Department of Mathematics Fax: (204) 474-7606
University of Manitoba email: Michael_Doob at umanitoba.ca
Winnipeg, MB, Canada R3T 2N2
------------------------------------------------------------------
More information about the texhax
mailing list