[texhax] Controlling line spacing in footnotes with plain TeX
Pierre MacKay
pierre.mackay at comcast.net
Thu May 29 05:01:10 CEST 2008
>I think you misunderstand the meaning of \lineskip -- it is not
>distance between base lines, it is glue inserted between two lines.
>This means you'll get 10pt of space before the last footnote line,
>which contains a \strut and therefore triggers the \lineskiplimit
>case.
>
>
>
Let's put it another way. With normal lines, spaced down by the normal
amount of baselineskip, lineskip is not supposed to come into play at
all. \lineskip is a safety value to be used if the upper line would for
some reason bleed into the lower line. In most normal setting,
\lineskip never gets called into play.
I had trouble with footnote lineskip for a while, but I made sure that I
had a strut whose height is proportional to the font. That is, if you
were setting 10 on 13, you determine what is the tallest ascender value
at 10 point and what is the deepest descender value. You can derive
that from the AFM. Let's say that the tallest ascender value is 8 pt,
and the deepest descender value is 2pt. Then the "height" of the strut
must be 8/10 x 13 and the "depth" must be 2/10 x 13. (height = 10.4pt,
depth = 2.6pt).
So the strut to be added to the end of the footnote will be \hrule
height 10.4pt depth 2.6pt width 0pt, and if this is automatically added
to the end of each footnote, succeeding footnotes will always end up
spaced correctly. (Careful macro writing can make the hard-coded values
in the above calculation disappear, but you do need to find a way to
capture the AFM ascender and descender values. )
Once you have done that, the safest value for \lineskip is 0pt. It
should never be needed.
Pierre MacKay
More information about the texhax
mailing list