单倍间距浮动字符的额外空格

单倍间距浮动字符的额外空格

我想要一个单倍行距的表格/图形,但文本的间距不同。当我将表格放在两个段落之间,并且表格浮动时,当我在序言中使用全局变量“\AtBeginEnvironment{table}{\singlespacing}”或将表格放在单倍行距环境中时(如示例表 1 所示),就会出现额外的间距。如果我简单地将“\singlespacing”放在表格内(如示例表 2 所示),我就会得到所需的间距。

我更喜欢序言解决方案,因为我在不同的环境中有很多这样的解决方案(表格/小页面/图形/等等)。

\documentclass[]{article}
\linespread{1.5}
\usepackage{lipsum,setspace}
%\AtBeginEnvironment{table}{\singlespacing}
\begin{document}

\lipsum[1][1-8]

\lipsum[1][1-8]

\begin{singlespace}
\begin{table}[htbp]\caption{Table}
\lipsum[1][1-12]
\lipsum[1][1-12]
\lipsum[1][1-12]
\lipsum[1][1-12]
\end{table}
\end{singlespace}
    
\lipsum[1][1-8]

\begin{table}[htbp]\caption{Table}\singlespacing
    \lipsum[1][1-12]
    \lipsum[1][1-12]
    \lipsum[1][1-12]
\end{table}

\lipsum[1][1-8]

\end{document}

enter image description here

答案1

额外的间距是的副产品\lipsum

如果你依赖,你就什么也不用做setspace

\documentclass[]{article}
\usepackage{setspace}

\usepackage{lipsum}

%\doublespacing
\setstretch{1.5}

\unpacklipsum[1][1-8]

\begin{document}

1\lipsumexp

2\lipsumexp

\begin{table}[htbp]\caption{Table}
\lipsum[1][1-12]
\lipsum[1][1-12]
\lipsum[1][1-12]
\lipsum[1][1-12]
\end{table}

3\lipsumexp

\begin{table}[htbp]\caption{Table}
    \lipsum[1][1-12]
    \lipsum[1][1-12]
    \lipsum[1][1-12]
\end{table}

4\lipsumexp

\end{document}

在这里我使用\unpacklipsum来避免插入\par,这实际上是造成麻烦的原因。

enter image description here

相关内容