2

Consider the following code:

\documentclass{book}
\usepackage{lipsum}

\begin{document} \thispagestyle{empty} \large

\begin{center} {\scshape{H O W , T O , I N C R E A S E , T H E , S P A C E\linebreak A F T E R , T H E , L I N E B R E A K.}} \end{center} \lipsum[3]

\vspace{15pt} \begin{center} {\scshape{H O W , T O , I N C R E A S E , T H E , S P A C E\linebreak \vspace{10pt} A F T E R , T H E , L I N E B R E A K.}} \end{center} \lipsum[3]

\vspace{15pt} \begin{center} {\scshape{H O W , T O , I N C R E A S E , T H E , S P A C E\linebreak \[0pt] A F T E R , T H E , L I N E B R E A K.}} \end{center} \vspace{15pt} \lipsum[3] \end{document}

which produces

enter image description here

In the first title, I simply used S P A C E\linebreak and the result suggests that more vertical space is needed between the two title lines.

The second title was produced by using \linebreak followed by \vspace*{10pt} immediately after "S P A C E"; which alas, did not increase the vertical space between the title lines, but rather between the title and the paragraph.

The third title was produced using \\[0pt], which did increase the gap between the title lines---but surprisingly so, because of the 0pt specification. I do not understand why the vertical gap increased at all---it seems reasonable to have expected nothing.

It seems that in order to increase the default gap to something aesthetically agreeable, I would have to use a negative point value in place of 0pt, which again, seems contrary to reason.

Remark: The gap produced by \linebreak seems to be fine when used in a paragraph with ordinary text.

QUESTION: (i) Can someone suggest the best way to either specify or increase the vertical gap between two lines in a small caps title, such as the one given in the MWE? (ii) Also, as my actual document contains a fair number of such titles all using the same font size, how may I define a command, e.g., \linebreak1, which when invoked, would produce a vertical gap of some specified amount in lieu of the default for \linebreak, which works fine within paragraphs?

The code is compiled with lualatex.

Thank you.

DDS
  • 8,816
  • 4
  • 9
  • 36
  • You're missing a very important point here. "Small caps" come from a "caps and small caps" font, and the small cap letters are replacements for the lowercase letters in the font. You are entering the uppercase letters, so the distance between baselines is what is expected. – barbara beeton Mar 02 '22 at 19:34
  • if you really want to use vspace you would need to put it before \\ not after. – David Carlisle Mar 02 '22 at 19:48
  • also, you might want to use microtype's \textls command instead of manually spacing out the titles – Robert Mar 02 '22 at 19:49
  • @Robert Thank you for this suggestion. – DDS Mar 02 '22 at 20:19
  • @barbarabeeton Thank you for posting this comment. – DDS Mar 02 '22 at 20:20

3 Answers3

4

You want to act on \baselinestretch. In the first example, only letterspacing is applied just to ensure that the vertical spaces around the centered part is the same.

For letterspacing it's much better to use microtype facilities.

\documentclass{book}
\usepackage{microtype}

\usepackage{lipsum}

\newenvironment{spacedcenteredsc} {\par\vspace{-0.4\baselineskip}\begin{center}\linespread{1.4}\scshape\lsstyle} {\end{center}}

\begin{document}

\lipsum[1][1-4] \begin{center} \scshape\lsstyle How To Increase The Space \ After The Linebreak. \end{center} \lipsum[1][1-4] \begin{spacedcenteredsc} How To Increase The Space \ After The Linebreak. \end{spacedcenteredsc} \lipsum[1][1-4]

\end{document}

Note that this will scale automatically depending on the current font size.

enter image description here

egreg
  • 1,121,712
2

(1) The general method is to use \fontsize{<size pt>}{<skip pt>}\selectfont

a

\documentclass{book}

\usepackage{lipsum}

\begin{document} \thispagestyle{empty}
\large

\begin{center} \fontsize{14}{28}\selectfont
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center}

\lipsum[3]\bigskip

\begin{center} \fontsize{18}{36}\selectfont
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center}

\lipsum[3]

\end{document}

(2) Here is command to increase the space between lines, using a fixed font size \xlinebreak[<optional font size>]{<skip in pt>} has 2 arguments, the first optional with a default value of 14pt, the second, mandatory, the desired skip.

d

\documentclass{book}

\usepackage{lipsum}

\newcommand{\xlinebreak}[2][14pt]{\fontsize{#1}{#2}\selectfont} % added `\linebreak[<optional, font size>]{<skip in pt>} <<<

\begin{document} \thispagestyle{empty}
\large

\begin{center} \xlinebreak{18pt} % font size 14 pt, skip 18 pt
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center} \bigskip

\begin{center} \xlinebreak{28pt} % font size 14 pt, skip 28 pt
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center}

\bigskip

\begin{center} \xlinebreak{36pt} % font size 14 pt, skip 36 pt
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center}

\begin{center} \xlinebreak[18pt]{32pt} % font size 18 pt, skip 36 pt
\scshape How , To , Increase , The, Space\ After , The , Linebreak. \end{center}

\end{document}

(3) Run this code to print the font size of a document

\documentclass[11pt]{book}

\makeatletter \newcommand\thefontsize[1]{{#1 Font size is: \f@size pt}} \makeatother

\begin{document} \sffamily

\thefontsize\tiny (tiny)

\thefontsize\scriptsize (scriptsize)

\thefontsize\footnotesize (footnotesize)

\thefontsize\small (small)

\thefontsize\normalsize (normal size)

\thefontsize\large (large)

\thefontsize\Large (Large)

\thefontsize\LARGE (LARGE)

\thefontsize\huge (huge)

\thefontsize\Huge (Huge)

\end{document}

c

Using \documentclass[11pt]{book} produces a normal size of 10.95pt.

See https://tex.stackexchange.com/a/24600/161015

Simon Dispa
  • 39,141
  • The initial font size is \large. Do you know, or perhaps, where I can find out, what point value \large (or some other font size) translates into? You have given {14} here---is that large? Also, is there a way perhaps, as the question asks, to define a command similar to \linebreak, say, linebreak1 where a linebreak is inserted with a specified gap such as your {28} for all such linebreaks where "\linebreak1" is invoked? Thank you. – DDS Mar 02 '22 at 19:43
  • size10.clo \DeclareRobustCommand\large{\@setfontsize\large\@xiipt{14}} so it's 12pt on 14pt – David Carlisle Mar 02 '22 at 19:46
  • Thank you for your answer. – DDS Mar 02 '22 at 20:18
2
begin{center}
{\scshape{H O W \, T O \, I N C R E A S E \, T H E \, S P A C E\linebreak
A F T E R \, T H E \, L I N E B R E A K.}}
\end{center}

is Ok except for the two sets of spurious braces, and use of all capitals (in which case there is no reason to use \scshape at all as the capitals are the same as the roman font capitals). So this should be

\begin{center}
\scshape H o w \, T o \, I n c r e a s e \, T h e \, S p a c e\linebreak
A f t e r \, T h e \, L i n e b r e a k.
\end{center}

although I'd use \\ rather than \linebreak.

In the second case, \vspace in horizontal mode adds the space after the line so

\linebreak \vspace*{10pt} A F T E R 

should be

\vspace*{10pt} \linebreak A F T E R 

If you really want to use that form.

The third case,

\linebreak \\[0pt]

Is just wrong you have two adjacent forced linebreaks. use \linebreak or \\ not both.

So I would use the first form but replace \linebreak by \\[whatever] actually I think it looks better without the extra space:

enter image description here

\documentclass{book}
\usepackage{lipsum}

\begin{document} \thispagestyle{empty} \large

\begin{center} \scshape H o w , T o , I n c r e a s e , T h e , S p a c e\ A f t e r , T h e , L i n e b r e a k. \end{center} \lipsum[3]

\begin{center} \scshape H o w , T o , I n c r e a s e , T h e , S p a c e\[5pt] A f t e r , T h e , L i n e b r e a k. \end{center} \lipsum[3]

\end{document}

David Carlisle
  • 757,742
  • answer 10001 to your questions that mentions that font switches do not take an argument. – David Carlisle Mar 02 '22 at 20:03
  • Many thanks. I'm beginning to see too many braces can easily mess other things up. With this simple solution, I guess there's no need for a "\linebreak1" command. – DDS Mar 02 '22 at 20:17