增加小型大写字母标题中 \Linebreak 产生的间隙

增加小型大写字母标题中 \Linebreak 产生的间隙

考虑以下代码:

\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}

产生

在此处输入图片描述

在第一个标题中,我只是使用了S P A C E\linebreak,结果表明两个标题行之间需要更多的垂直空间。

第二个标题是使用“SPAC E”后\linebreak紧接着的文字生成的\vspace*{10pt};遗憾的是,这并没有增加标题行之间的垂直空间,而是增加了标题和段落之间的垂直空间。

第三个标题是使用 制作的\\[0pt],这确实增加了标题行之间的间隙——但令人惊讶的是,这是由于规范所致0pt。我不明白为什么垂直间隙会增加——似乎没有期待任何变化是合理的。

似乎为了将默认间隙增加到美观的程度,我必须使用负点值来代替0pt,但这似乎又违背常理。

评论:\linebreak在与普通文本的段落中使用时,产生的间隙似乎没问题。

问题:(i)有人可以建议指定或增加小型大写标题(例如 MWE 中给出的标题)中两行之间的垂直间隙的最佳方法吗?(ii)此外,由于我的实际文档包含相当数量的此类标题,并且都使用相同的字体大小,我如何定义一个命令,例如,\linebreak1当调用该命令时,它将产生某个指定量的垂直间隙来代替 的默认值\linebreak,该命令在段落内可以正常工作?

代码是用 编译的lualatex

谢谢。

答案1

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}

除了两组虚假括号和使用全部大写字母(在这种情况下,根本没有理由使用\scshape大写字母,因为大写字母与罗马字体大写字母相同)之外,其他都还可以。因此,这应该是

\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}

尽管我会使用\\而不是\linebreak

在第二种情况下,\vspace在水平模式下,行后会添加空格,因此

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

应该

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

如果您确实想使用该表格。

第三种情况,

\linebreak \\[0pt]

两个相邻的强制换行符是错误的。请同时使用\linebreak\\不使用两者。

因此,我会使用第一种形式,但实际上我认为替换\linebreak\\[whatever]没有额外空格看起来更好:

在此处输入图片描述

\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}

答案2

您想要采取行动\baselinestretch。在第一个示例中,仅应用字母间距以确保居中部分周围的垂直间距相同。

对于字母间距很多更好地利用microtype设施。

\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}

请注意,这将根据当前字体大小自动缩放。

在此处输入图片描述

答案3

(1)一般方法是使用\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)这是增加行间距的命令,使用固定字体大小,\xlinebreak[<optional font size>]{<skip in pt>}有 2 个参数,第一个可选默认值14pt,第二个,强制性的,希望跳过。

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)运行此代码来打印文档的字体大小

\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

使用\documentclass[11pt]{book} 产生 10.95pt 的正常大小。

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

相关内容