使用 doublespacing 环境进行双倍行距

使用 doublespacing 环境进行双倍行距

我想在某个段落\begin{doublespacing}通过使用和\end{doublespacing}来自包的文档setspace。但是,我发现只有在代码中添加额外的空白行时它才会生效,这对于代码的可读性来说是多余的...有没有更好的方法/解决方法来实现双倍行距而不增加额外的空白行?

梅威瑟:

\documentclass[headsepline,footsepline,footinclude=false,twoside,fontsize=12pt,paper=a4,listof=totoc,bibliography=totoc,BCOR=12mm,DIV=12,chapterprefix=on,numbers=noenddot]{scrbook} % two-sided


\usepackage{setspace}
\usepackage{lipsum}


\begin{document}

\begin{doublespacing}
    \lipsum[1]
\end{doublespacing}

\begin{doublespacing}
    \lipsum[1]
                   % ---> Extra blank line necessary for the double-spacing
\end{doublespacing}

\end{document}

答案1

你发现的不是一个错误,而是整个 TeX 段落构建器系统的一个核心功能:段落内的行距取决于段落实际结束的位置。在

\begin{doublespacing}
    \lipsum[1]
\end{doublespacing}

就 TeX 而言,段落的结尾发生在不是在lipsum填充文本的最后一个句号(又称句号),但是 \end{doublespacing}。但那时doublespacing环境的范围已经结束;因此,属于 lipsum[1] 的文本(在我看来是正确的)排版为单倍行距。

有多种方式可以触发段落的结束:

  • 一个或多个全空白输入中的行。顺便说一句,您在帖子的第二个代码片段中呈现的行是不是全部空白(因为它包含注释),因此,与您的主张相反,不足以使段落双倍行距。

  • 明确的\par指令。

  • 隐式段落分隔指令,由诸如 、 、 等命令发出\chapter\section另外\begin{theorem}\\“双反斜杠”指令会引发换行但不是段落分隔符根据 TeX 的词汇规则。

你的主要问题是,

有没有更好的方法/解决方法来实现双倍行距而不增加空行?

我想说,发出明确的\par指令是留下全空白行的主要替代方法。

相关内容