stackrel、垂直对齐和数学运算符

stackrel、垂直对齐和数学运算符

在以下 MnWE 中,宏\lhypbad产生了良好的垂直对齐,但没有尊重数学运算符周围的空间<。见下图。解决这个问题的最佳方法是什么?

\documentclass[12pt,a4paper]{article}

\usepackage{amsmath}

\newcommand\leqhyp{%
    \stackrel{\text{hyp}}{\leq}%
}

\newcommand\lhyp{%
    \stackrel{\text{hyp}}{<}%
}

\newcommand\lhypbad{%
    \stackrel{\text{hyp}}{<\vphantom{\leq}}%
}

\begin{document}


$x \leqhyp 1 \lhyp y$

$x \leqhyp 1 \lhypbad y$

\end{document}

截屏

答案1

\leq和的符号<具有不同的高度。您可以使用 强制后者与前者的高度相同\vphantom,但\mathrel必须围绕该结构。{<}\vphantom{\leq}还应使用 以避免产生虚假间距。

\documentclass[12pt,a4paper]{article}

\usepackage{amsmath}

\newcommand\leqhyp{%
  \overset{\mathrm{hyp}}{\leq}%
}

\newcommand\lhyp{%
  \mathrel{\overset{\mathrm{hyp}}{{<}\vphantom{\leq}}}%
}

\begin{document}

$x \leqhyp 1 \lhyp y$

\end{document}

在此处输入图片描述

一般来说,\overset比 好\mathrel。但在这种特殊情况下,\stackrel{\mathrm{hyp}}{{<}\vphantom{\leq}}可以,因为\stackrel总是会产生关系符号。

\mathrm应该优先于\text这里,或者“hyp”这个词在定理中可以用斜体表示。

相关内容