72

The blog post Quick note on line spacing discusses line spacing and it says

To change the line spacing for the entire document, you can use the linespread command in your preamble:

\linespread{<factor>}

The factor is somewhat confusing. For double-spacing you have to use 1.6 and for one-and-a-half spacing 1.3. Not very intuitive, but I'm sure there is a reason for it.

This unintuitive factor triggered my curiosity. What is the reason for it being as it is?

This question is just motivated by my curiosity and I have no practical reason for asking it. Feel free to close it if it's inappropriate or see at as post in the same vein as \nothing, \varnothing and \emptyset in that it asks about history or some design decision.

  • 4
    Perhaps not an exact duplicate, but surely of interest: tex.stackexchange.com/questions/13742/… – lockstep Sep 30 '11 at 15:41
  • 5
    There's no official definition of "double spaced". Pick what is less displeasing ("more pleasing" would be an oxymoron). – egreg Sep 30 '11 at 15:44
  • 2
    In my previous question, there may be 3 different definitions of "double-spacing". setspace package uses a different one other than MS Word, Ooo Write, etc. – Leo Liu Sep 30 '11 at 15:51
  • 4
    I like curiosity questions. There should be an extra tag for it :) – topskip Sep 30 '11 at 19:53
52

With the LaTeX standard classes (article, book, and report) and no class options added, \normalsize results in a font size (size of the largest glyphs in a font -- typically, braces) of 10pt and a \baselineskip (vertical skip between the base lines of two successive lines of type) of 12pt. The ratio between font size and \baselineskip is 1.2.

The linespread command (which must be issued in the document preamble) may be used to change the \baselineskip without changing the font size.

A possible definition of \onehalfspacing and \doublespacing is that the ratio between font size and \baselineskip should be 1.5 resp. 2. Because the "basic" ratio for 10pt is 1.2, a multiplier of 1.25 and (approximately) 1.667 has to be applied -- and this is basically what the setspace package does. ("Basically" because it retains the ratio of 1.2 for footnotes and the like.)

The statement "For double-spacing you have to use 1.6 and for one-and-a-half spacing 1.3" amounts to either a rounding error, or being confused, or both.

  • 2
    If \linespread is a command for changing \baselineskip, wouldn't it be easier to just change \baselineskip? – Sverre Oct 6 '17 at 12:34
  • @Sverre No\linespread does not change (immediately) \baselineskip. What it does is to modify the \baselinestretch which impacts size changing commands or font selection comand (which are the ones which will change the \baselineskip and other things). Thus the \linespread effects persists across font size changes. – user4686 Jun 3 '18 at 8:44
41

Extending lockstep's answer to other document class options (like 11pt and 12pt) gives rise to the seemingly strange scaling factors used by the setspace package:

  • 10pt (already discussed)

    setspace defines the scaling factor to be 1.25 for \onehalfspacing and 1.667 for \doublespacing, since the "basic" ratio is 1.2 (\normalfont has a \baselineskip of 12pt; see size10.clo)

  • 11pt

    setspace defines the scaling factor to be 1.213 for \onehalfspacing and 1.618 for \doublespacing, since the "basic" ratio is 1.236 (\normalfont has a \baselineskip of 13.6pt; see size11.clo)

  • 12pt

    setspace defines the scaling factor to be 1.241 for \onehalfspacing and 1.655 for \doublespacing, since the "basic" ratio is 1.208 (\normalfont has a \baselineskip of 14.5pt; see size12.clo)

As such, in the following hypothetical situation, a scaling factor of 2.4 (that is, \setstretch{2.4}) would provide "triple spacing" in a document with normal font size of 16pt and \baselineskip of 20pt.

All scaling factors are rounded to 3 digits after the decimal.

2

I recently tried to customize the line spacing in a ctex document and this post served as one of my references. During my research, however, I found a mistake made by the setspace package.

To further extend Werner’s answer, I want to point out that setspace has set both factors for an 11pt article wrong, unfortunately.

We find in size11.clo that \normalsize is defined by

\@setfontsize\normalsize\@xipt{13.6}%

The problem is that the “basic” ratio in 11pt article is not 13.6/11 but rather 13.6/10.95 for historical reasons. This implies that for \onehalfspacing, the factor should be around 1.2077205882, not 1.213; and for \doublespacing, the factor should be around 1.6102941176, not 1.618.

I have no idea why article inconsistently sets the body text leading/fontsize basic ratio to be 1.2, 1.242 (not 1.236) and 1.208 for 10pt, 11pt and 12pt, respectively.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.