公式与周围文本之间的间距问题

公式与周围文本之间的间距问题

我想在文本中插入公式,equation如下所示:

\documentclass{article}
\usepackage{amsmath}

\begin{document}

So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if

\begin{equation*}
\forall g,h \in G) \hspace{2mm} \rho(gh)=\rho(g)\rho(h).
\end{equation*} 

\end{document}

我的问题是公式前后的垂直间距太大。

答案1

如果您确实相信长度参数的默认值\abovedisplayskip,并\belowdisplayskip让 LaTeX 在显示的方程式上方和下方插入过多的垂直空白,您可以稍微减小这些值。例如,

\addtolength\abovedisplayskip{-1ex}
\addtolength\belowdisplayskip{-1ex}

不过,不要太过分。

也请遵循 barbara beeton 的建议,不要在定义显示方程式的代码上方和下方留下空行。并且,如果您的文档加载了包setspace并使用了间距设置以外 \singlespacing,请使用选项加载包nodisplayskipstretch。这样做会关闭显示前后的线条拉伸。如果您的文档使用,\doublespacing您会注意到巨大的效果。

答案2

您可以使用\useshortskip来自nccmath包的 — — 但只会改变\abovedisplayskip — — 或一个center环境 — — 差别非常小 — — 或创建一个myequ环境,将其添加smallskip\baselineskip(当然,这可能会改变)。

以下代码显示了这些不同的可能性:

\documentclass{article}
\usepackage{amsmath, amsfonts}
\usepackage{nccmath}
\usepackage{etoolbox}
\newenvironment{myequ}{%
\smallskip\par\centering$\displaystyle}
{$\smallskip\par}

\begin{document}

\noindent With the \verb+equation*+ environment : \medskip

So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if
\begin{equation*}
\forall g,h \in G \hspace{2mm} \rho(gh)=\rho(g)\rho(h).
\end{equation*}
Text text text text text text text text text text text text text text text text text text text text. \\

\noindent With a \verb+center + environment : \medskip

So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if
\begin{center}
$\displaystyle
 \forall g,h \in G \hspace{2mm} \rho(gh)=\rho(g)\rho(h). $
\end{center}
Text text text text text text text text text text text text text text text text text text text text. \\

\noindent With \verb+\useshortskip+ : \medskip

So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if\useshortskip
\begin{equation*}
\forall g,h \in G \hspace{2mm} \rho(gh)=\rho(g)\rho(h).
\end{equation*}
Text text text text text text text text text text text text text text text text text text text text. \\

\noindent With the \verb+myequ+ environment : \medskip

So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if\useshortskip
\begin{myequ}
\forall g,h \in G \hspace{2mm} \rho(gh)=\rho(g)\rho(h).
\end{myequ}
Text text text text text text text text text text text text text text text text text text text. \\

\end{document} 

在此处输入图片描述

答案3

spacing除了 Barbara 关于删除空白行的评论之外,您还可以使用包中的环境手动设置行距setspace(请参阅此链接!来自 LaTeX wikibook)。

工作示例:

\documentclass{article}
\usepackage{amsmath}
\usepackage{setspace}

\begin{document}

\begin{spacing}{0.2}
So, $\rho : G \rightarrow GL(n,\mathbb{F})$ is representation if and only if
\begin{equation*}
    \forall g,h \in G) \hspace{2mm} \rho(gh)=\rho(g)\rho(h).
\end{equation*} 
\end{spacing}

\end{document}

相关内容