[Tex/LaTex] What are the generally accepted guidelines for adjusting \linespread to avoid extra spreading from inline math

best practicesline-spacingmath-mode

General Background

I am just starting to think about typesetting and LaTeX in anything close to a serious manner, and am getting lots of questions that perhaps are appropriate for this site, but perhaps are either too open-ended and opinion based, or too much about typesetting and design in general and not enough about tex; here is an attempt to ask one of these questions in an acceptable way.

I asked a professional mathematician with some serious (but, as far as I know, amateur) interest in typesetting about easy ways to improve the look of the basic amsart math documents that I upload to the arxiv (so, most people will be reading it on a computer monitor; a few studying it more deeply will print it out from their own printer in some fashion), and he gave three points:

  1. \usepackage{microtype}
  2. \usepackage{mathpazo}
  3. \linespread{1.2}

From what I've seen browsing around here, the first two points seem uncontroversial (with of course choice of font being a matter of taste); it is the third point I am trying to figure out now.

What I've observed/thought

I have gathered that it is widely accepted that it is good idea to increase the line spread when using Palantino, with the recommended range I've seen being between 1.05 and 1.10; see, in particular Why exactly is \linespread{1.05} appropriate for Palatino?; in a comment toward the bottom of the page, we have Yiannis Lazarides: "Also I think for mathematical texts using a lot of inline math one should use 1.10"

The situation Yiannis mentions is, of course, exactly my situation; but the advice I've quoted above, and my own quick experimentation, suggests that 1.1 may not be large enough.

Testing \linespread{1.1} on the article I'm currently writing, I get several large increased line spaces because of inline math — \left(\frac{2\pi i}{r}\right) and \Hom^{(c,d)} (\Hom being a mathoperator) causing problems.

Increasing to \linespread{1.2} seems to remove the extra space between lines from the inline fraction, but still seems to have a very small increase in line space from the second case.

Personally, I find the extra skipped white space very distracting from the text and something to be avoided, but I don't think I've ever noticed it flagged with a warning, so perhaps this isn't the general view among people who worry about these things.

Several 'pure' responses to this problem occur to me:

  1. Increase the linespread enough so that increased white spaces never happen
  2. Live with increased line separations
  3. Change the text to avoid inline math happening
  4. Set it so the increased white space doesn't happen by setting \lineskiplimit to a negative value as is done here

There could be approaches I have not considered, and of course mixes of the approaches above are possible and probably optimal — for instance, setting \linespread high enough so that the spreading is rare and small, and then either living with the spreading that does happen, or setting lineskiplimit to be negative in addition to the large \linespread.

Attempt at a real question

To try to hammer my confusion into something approaching an appropriate question: what do professional mathematical typesetters / very experienced mathematical latexers think and deal with these questions? I am not so much interested in any individuals personal preference, but in general accepted guidelines and ways of thinking about this problem. Are there large differences of opinion in such matters? If so, are there nice sources out there that 'teach the controversy'?

UPDATE

I realize now what it is really causing the problem is having both a sub- and super- script on the math operators. Here is a picture of this in the wild , pulled from this arxiv entry, that is using mathpazo and \linespread{1.15}.

In the wild

Here are some paragraphs from a paper in progress, pulled to illustrate the same problem in something approaching context:

\documentclass[12pt]{article}

\usepackage{amsmath}

\DeclareMathOperator{\Hilb}{Hilb}
\DeclareMathOperator{\Hom}{Hom}
\newcommand{\C}{\mathbb{C}}

\usepackage{mathpazo}


\begin{document}

The case $\Hilb^G_G$ where $v=G$ is the regular representation of $G$ has been studied
in particular depth, and is frequently referred to as GHilb.  Since the ideal sheaf of   
a generic point on $[\C^2/G]$ corresponds to the regular representation of $G$, the
Hilbert-Chow morphism $\Hilb^G_G\to\C^2/G$ is an isomorphism away from $0$.  Since
$\Hilb^G_G$ is smooth, this is a resolution of singularities.  In fact, it turns out
that it is the minimal resolution of $\C^2/G$, and has been much studied.

The action of $(\C^*)^2$ on $\C^2$ induces an action on $\Hilb_n(\C^2)$, and since if
$G\subset (\C^*)^2$ then in particular $G$ and $(\C^*)$ commute, we also have a
$(\C^*)^2$ action on $\Hilb_G(\C^2)$.  The fixed points of this action on
$\Hilb_n(\C^2)$ are precisely the monomial ideas.  Since $G\subset (\C^*)^2$, we see
that the monomial ideals are also the fixed points of the action on $\Hilb_n(\C^2)^G$.

The space of $\Hom^{(c,d)}_\C(\mathcal{I},R/\mathcal{I})$ of weight $(c,d)$ vector 
space maps corresponds to the cells in $\lambda$ and above $P_\lambda(c,d)$, while the 
space $\Hom^{(c,d)}_R (\mathcal{I},R/\mathcal{I})$ of weight $(c,d)$ maps of $R$-
modules corresponds to the bounded regions below $P_\lambda$ and above 
$P_\lambda(c,d)$.

\end{document} 

And the output:

Output

Even where there aren't horrendous extra spreads, as in the second paragraph, it still seems rather dense to my eyes, but I'm hardly an expert.

Best Answer

As a general rule increasing the linespacing is bad. (Of course this assumes that the default spacing has been set appropriate to the current font). If the inline math doesn't fit within the specified line spacing consider changing that before changing the global line spacing.

For the examples given

\documentclass{article}
\usepackage{amsmath}
\DeclareMathOperator{\Hom}{Hom}
\usepackage{mathpazo}
\showoutput
\showboxdepth5
\begin{document}

\noindent
\parbox{.4\textwidth}{
xx xx xx xx xx xx xx\\
%$\left(\frac{2\pi i}{r}\right)$\\
$(\frac{2\pi i}{r})$\\
xx xx xx xx xx xx xx\\
$\Hom^{(c,d)}$\\
xx xx xx xx xx xx xx
}
\parbox{.4\textwidth}{
xx xx xx xx xx xx xx\\
xx xx xx xx xx xx xx\\
xx xx xx xx xx xx xx\\
xx xx xx xx xx xx xx\\
xx xx xx xx xx xx xx}

\end{document} 

using Computer Modern they both fit into the exiting space. Using mathpazo the \Hom example fits but the \left \right construction is too big. Using \left \right in inline math is a bit suspect anyway and if you just use normal size brackets it fits within the specified baseline.

enter image description here


In general you should set your settings for the space that you consider acceptable and then if the math doesn't fit in the space, use display math or a variant notation or something (sometimes you can just use \smash to hide the hight even though it could then overprint a descender on the line above, if you know there is no descender then...) Here for example is your passage unchanged on the original baselineskip set by the font package, but with superscripts made smaller. \lineskip glue is not used, only \baselineskip glue as shown in the log, so confirming that baseline spacing has been preserved. There are alternatives such as playing with the font dimen parameters that control script positions. But I ended up not using that, so commented out.

enter image description here

\documentclass[12pt]{article}

\usepackage{amsmath}

\DeclareMathOperator{\Hilb}{Hilb}
\DeclareMathOperator{\Hom}{Hom}
\newcommand{\C}{\mathbb{C}}

\showoutput
\showboxdepth4


\usepackage{mathpazo}

 \DeclareMathSizes{12pt}{12}{6.5}{5}
\begin{document}


\sbox0{$aaa$}

\typeout{
13 \the\fontdimen13\textfont2^^J
14 \the\fontdimen14\textfont2^^J
15 \the\fontdimen15\textfont2^^J
16 \the\fontdimen16\textfont2^^J
17 \the\fontdimen17\textfont2^^J
18 \the\fontdimen18\textfont2^^J
19 \the\fontdimen19\textfont2^^J
19 \the\fontdimen8\textfont3^^J
}
 %


%  \fontdimen13\textfont2=\dimexpr(\fontdimen13\textfont2)/10\relax
%  \fontdimen14\textfont2=\dimexpr(\fontdimen14\textfont2)/10\relax
%  \fontdimen15\textfont2=\dimexpr(\fontdimen15\textfont2)/10\relax
%  \fontdimen16\textfont2=\dimexpr(\fontdimen16\textfont2)/10\relax
%  \fontdimen17\textfont2=\dimexpr(\fontdimen17\textfont2)/10\relax
%  \fontdimen18\textfont2=\dimexpr(\fontdimen18\textfont2)/10\relax
%  \fontdimen19\textfont2=\dimexpr(\fontdimen19\textfont2)/10\relax
%  \fontdimen8\textfont3=\dimexpr(\fontdimen8\textfont3)/10\relax



The case $\Hilb^G_G$ where $v=G$ is the regular representation of $G$ has been studied
in particular depth, and is frequently referred to as GHilb.  Since the ideal sheaf of   
a generic point on $[\C^2/G]$ corresponds to the regular representation of $G$, the
Hilbert-Chow morphism $\Hilb^G_G\to\C^2/G$ is an isomorphism away from $0$.  Since
$\Hilb^G_G$ is smooth, this is a resolution of singularities.  In fact, it turns out
that it is the minimal resolution of $\C^2/G$, and has been much studied.

The action of $(\C^*)^2$ on $\C^2$ induces an action on $\Hilb_n(\C^2)$, and since if
$G\subset (\C^*)^2$ then in particular $G$ and $(\C^*)$ commute, we also have a
$(\C^*)^2$ action on $\Hilb_G(\C^2)$.  The fixed points of this action on
$\Hilb_n(\C^2)$ are precisely the monomial ideas.  Since $G\subset (\C^*)^2$, we see
that the monomial ideals are also the fixed points of the action on $\Hilb_n(\C^2)^G$.

The space of $\Hom^{(c,d)}_\C(\mathcal{I},R/\mathcal{I})$ of weight $(c,d)$ vector 
space maps corresponds to the cells in $\lambda$ and above $P_\lambda(c,d)$, while the 
space $\Hom^{(c,d)}_R (\mathcal{I},R/\mathcal{I})$ of weight $(c,d)$ maps of $R$-
modules corresponds to the bounded regions below $P_\lambda$ and above 
$P_\lambda(c,d)$.

\end{document}