调整 \stackrel 中的垂直和水平间距

调整 \stackrel 中的垂直和水平间距

我的文档中有几个\stackrel。请参见以下示例:

\documentclass{article}
\usepackage{stackrel}
\begin{document}
    $\stackrel[\textrm{sand}]{\textrm{A}}{\textrm{B}}$
    $\stackrel[\textrm{wiches.}]{\textrm{C}}{\textrm{D}}$
    $\stackrel[\textrm{E}]{\textrm{rain}}{\textrm{F}}$
    $\stackrel[\textrm{G}]{\textrm{cloud}}{\textrm{H}}$
    $\stackrel[\textrm{I}]{\textrm{J}}{\textrm{snow}}$
    $\stackrel[\textrm{K}]{\textrm{L}}{\textrm{shoe}}$
\end{document}
  • 我如何调整每个之间的水平间距\stackrel,使得每个 stackrel 中最长的项目的间距就像它们来自同一个单词一样(即“sand wich”将与排版的“sandwich”完全相同)?
  • 如何调整 的线条各层之间的垂直空间\stackrel(即 A、C、雨、云、J 和 L 都出现在同一线上)?

更新:

  • (通过上述内容)我如何确保带有降部的字母“q”、“y”、“p”和“j”仍然能够正确降部?

答案1

在这种特定情况下,以下内容可以回答您的两个疑虑:

  • %在每个条目的末尾使用\stackrel,以避免编辑器中的新行(或回车符)插入虚假空格(您可能只想将这些空格插入到您想要“保持在一起”的条目之间);
  • 在每个元素中使用\strut,将内容提升到共同的水平。请注意\strut,定义为\rule[-.3\baselineskip]{0pt}{\baselineskip},由于深度和高度足够大,可以容纳常规字符下降部分。

在此处输入图片描述

\documentclass{article}
\usepackage{stackrel}% http://ctan.org/pkg/stackrel
\begin{document}
  $\stackrel[\strut\textrm{3}]{\strut\textrm{1}}{\strut\textrm{2}}$
  $\stackrel[\strut\textrm{sand}]{\strut\textrm{A}}{\strut\textrm{B}}$%
  $\stackrel[\strut\textrm{wiches.}]{\strut\textrm{C}}{\strut\textrm{D}}$%
  $\stackrel[\strut\textrm{E}]{\strut\textrm{rain}}{\strut\textrm{F}}$%
  $\stackrel[\strut\textrm{G}]{\strut\textrm{cloud}}{\strut\textrm{H}}$%
  $\stackrel[\strut\textrm{I}]{\strut\textrm{J}}{\strut\textrm{snow}}$%
  $\stackrel[\strut\textrm{K}]{\strut\textrm{L}}{\strut\textrm{shoe}}$
  $\stackrel[\strut\textrm{jones}]{\strut\textrm{M}}{\strut\textrm{N}}$%
  $\stackrel[\strut\textrm{soda}]{\strut\textrm{O}}{\strut\textrm{P}}$%
  $\stackrel[\strut\textrm{Q}]{\strut\textrm{yams}}{\strut\textrm{R}}$%
  $\stackrel[\strut\textrm{S}]{\strut\textrm{yummy}}{\strut\textrm{T}}$%
  $\stackrel[\strut\textrm{U}]{\strut\textrm{V}}{\strut\textrm{gummy}}$%
  $\stackrel[\strut\textrm{W}]{\strut\textrm{X}}{\strut\textrm{bears}}$
  $\stackrel[\strut\textrm{3}]{\strut\textrm{1}}{\strut\textrm{2}}$
\end{document}​

另一种方法是,不使用\stackrel,而是通过宏将内容插入 中tabular。然后应该默认建立(垂直)对齐。这是一个展示如何实现的最小示例:

在此处输入图片描述

\documentclass{article}
\newcommand{\stackitem}[3]{%
  \begin{tabular}{@{}c@{}}#1\\#2\\#3\end{tabular}%
}
\begin{document}
  \stackitem{A}{B}{sand}%
  \stackitem{C}{D}{wiches.}%
  \stackitem{rain}{F}{E}%
  \stackitem{cloud}{H}{G}%
  \stackitem{J}{snow}{I}%
  \stackitem{L}{shoe}{K}
\end{document}

您会注意到,这\stackrel以更方便的形式提供了功能,因为指定项目的顺序遵循它们显示的顺序(从左到右 -> 从上到下)。此外,它不需要数学模式-文本模式切换。

如果你对更分散的显示感兴趣,可以很容易地通过以下方式获得:

\renewcommand{\arraystretch}{2}%

将行数延长 2 倍。

相关内容