使用自定义数学符号时缺少插入 $

使用自定义数学符号时缺少插入 $

我定义了一个命令:

\newcommand{\lequiv}{\raisebox{-0.25 \height}{\overset{<}{\sim}}}

但每当我尝试使用它时(例如,在 中gather,我得到Missing $ inserted。为什么?

答案1

\raisebox命令用于声明文本的垂直位置;即降低或升高文本。注意文本的处理方式LR mode如下:

\newcommand{\lequiv}{\raisebox{-0.25\height}{\overset{<}{\sim}}}

被错误地声明并给出错误,因为应该在 中的数学声明math mode却在 中text mode

快速修复方法是:

\newcommand{\lequiv}{\raisebox{-0.25\height}{$\overset{<}{\sim}$}}

答案2

azetina 的答案解决了您遇到的错误并将其删除。另一方面,您得到的输出相当差。

\documentclass{article}
\usepackage{amsmath,amssymb}

\begin{document}

$A\lesssim B\le C\gtrsim D_{x\lesssim y}$

\end{document}

在此处输入图片描述

这里有一个比你的更好的定义,\lequiv如果你想要一些不同的东西,它可能会派上用场\sim

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand{\lequiv}{\lg@equiv{<}}
\newcommand{\gequiv}{\lg@equiv{>}}
\newcommand{\lg@equiv}[1]{\mathrel{\mathpalette\lg@@equiv{#1}}}

\newcommand{\lg@@equiv}[2]{%
  \raisebox{.3\depth}{%
    \vtop{\m@th\offinterlineskip
      \ialign{##\cr$#1#2$\cr\noalign{\kern1pt}$#1{\sim}$\cr}%
    }%
  }%
}
\makeatother

\begin{document}

$A\lequiv B\le C\gequiv D_{x\lequiv y}$

\end{document}

在此处输入图片描述

与您根据定义获得的内容进行视觉比较。

在此处输入图片描述

另一方面,amssymb提供\lesssim\gtrsim

相关内容