我第一次尝试使用 LaTex。我喜欢这个系统,但遇到了一个问题(请原谅任何新手错误):
\emph{Modus ponens}: The form of this argument is:
\hsp if $p$, then $q$.
\hsp $p$
\hsp therefore, $q$.
这里\hsp
有一个自定义命令,它添加了一些水平空间(\newcommand{\hsp}{\hspace{2ex}}
)。我想减少最后三行的行距。我尝试过包\singlespacing
中的等\setspace
,但似乎不起作用。
有人可以帮帮我吗?
答案1
一种可能的解决方案是将参数形式放在spacing
环境内。这样您就可以使用包独立于文档本身的间距来操作间距setpsace
。这样做的另一个好处是您不再需要定义命令,\hsp
因为quote
环境会自动缩进其中的文本。以下是此类解决方案的 MWE:
\documentclass{article}
\usepackage{setspace}
\doublespacing
\begin{document}
blah blah blah blah
\emph{Modus ponens}: The form of this argument is:
\begin{quote}
\singlespacing
if $p$, then $q$.
$p$
therefore, $q$.
\end{quote}
\end{document}
更新:正如 @karlkoeller 指出的那样,单倍行距可能不够。如果单倍行距不够,您还可以将内容放置在环境spacing
(由包提供setspace
)内,而不是quote
环境中。然后,您可以使间距甚至小于单行间距,如下所示:
\begin{spacing}{0.8} % or some smaller number if you would like
if $p$, then $q$.
$p$
therefore, $q$.
\end{spacing}
此解决方案将要求您将spacing
环境嵌入环境内部quote
或重新引入\hsp
命令以便缩进参数的形式。
答案2
你也可以尝试这个:
\renewcommand{\baselinestretch}{1} %More or less. As you wish.
干杯!