我怎样才能否定长等号?

我怎样才能否定长等号?

作为回答如何制作长身份标志?@egreg 提供了解决方案:

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

\makeatletter
\newlength{\longeq@wd}
\newcommand{\longeq}[1][2]{\mathrel{\mathpalette\longeq@{#1}}}
\newcommand{\longeq@}[2]{%
  \begingroup
  \settowidth\longeq@wd{$\m@th#1=$}%
  \makebox[#2\longeq@wd][s]{%
    $\m@th#1\mspace{1mu}$%
    \ifdim#2pt<2pt
      $\m@th#1{=}\hss{=}$%
    \else
      $\m@th#1{=}\kern-0.5\longeq@wd\cleaders\longeqfill@{#1}\hfil\kern-0.5\longeq@wd{=}$%
    \fi
    $\m@th#1\mspace{1mu}$%
  }%
  \endgroup
}
\newcommand{\longeqfill@}[1]{\hbox{$\m@th#1\mspace{-3mu}{=}\mspace{-3mu}$}}
\makeatother

\begin{document}

\makeatletter

$a==b$

$a\longeq b$

$a\longeq[1.25]b$

$a\longeq[1.5]b$

$a\longeq[1.75]b$

$a\longeq[3]b$

\end{document}

我怎样才能否定像 这样的长标识符号$\neq$

答案1

使用centernot

\documentclass[draft]{article}
\usepackage{amsmath,centernot}

\makeatletter
\newlength{\longeq@wd}
\newcommand{\nlongeq}[1][2]{\centernot{\longeq[#1]}}
\newcommand{\longeq}[1][2]{\mathrel{\mathpalette\longeq@{#1}}}
\newcommand{\longeq@}[2]{%
  \begingroup
  \settowidth\longeq@wd{$\m@th#1=$}%
  \makebox[#2\longeq@wd][s]{%
    $\m@th#1\mspace{1mu}$%
    \ifdim#2pt<2pt
      $\m@th#1{=}\hss{=}$%
    \else
      $\m@th#1{=}\kern-0.5\longeq@wd\cleaders\longeqfill@{#1}\hfil\kern-0.5\longeq@wd{=}$%
    \fi
    $\m@th#1\mspace{1mu}$%
  }%
  \endgroup
}
\newcommand{\longeqfill@}[1]{\hbox{$\m@th#1\mspace{-3mu}{=}\mspace{-3mu}$}}
\makeatother

\begin{document}

\makeatletter

$a==b$

$a\longeq b\nlongeq c$

$a\longeq[1.25]b\nlongeq[1.25] c$

$a\longeq[1.5]b\nlongeq[1.5] c$

$a\longeq[1.75]b\nlongeq[1.75] c$

$a\longeq[3]b\nlongeq[3] c$

\end{document}

在此处输入图片描述

答案2

采用所引用答案中的替代解决方案,如果最终=在构造中使用奇数个符号,则只需应用\not中间的符号即可。

\documentclass{article}
\newcommand\longeq{\mathrel{{=}\mkern-4mu{=}\mkern-4mu{=}}}
\newcommand\nlongeq{\mathrel{{=}\mkern-4mu{\not=}\mkern-4mu{=}}}
\begin{document}
$x\longeq y \nlongeq z$
\end{document}

在此处输入图片描述

Werner 在下面的评论中指出了一种更简单的语法

\newcommand\longeq{=\joinrel=\joinrel=}
\newcommand\nlongeq{=\joinrel\not=\joinrel=}

但是,\joinrel(连接关系)宏使用3mu移位来实现覆盖,而我最初的定义选择将移位设为,4mu相比之下,在我的原始情况下,总长度略短。

如果发现它太宽,则将 的负性调高\mkern。这里是 -10mu(之前是 -4mu):

在此处输入图片描述

相关内容