叠加符号的精确定位

叠加符号的精确定位

我希望在等号中间有一个点,位于两横线之间。阅读此答案后:

如何将两个符号叠加在一起?

我尝试使用\mathrlap{=}\cdot\mathclap{=}\cdot\superimpose{=}{\cdot},但每次圆点要么太靠左,要么太靠右。有没有办法控制圆点的准确位置,以便我可以将其放在中间?

答案1

您可以\ooalign为此目的使用。使用\mathpallette将为下标提供适当的间距。

在此处输入图片描述

\documentclass{article}

\makeatletter
\newcommand{\equaldot}{\mathrel{\mathpalette\eqd@t\relax}}
\newcommand{\eqd@t}[2]{%
  \ooalign{%
    $\m@th#1=$\cr
    \hidewidth$\m@th#1\cdot$\hidewidth\cr
  }%
}
\makeatother


\begin{document}

$A\equaldot B_{A\equaldot B_{A\equaldot B}}$

\end{document}

答案2

根据代码这里

\documentclass{article}
\newcommand{\eq}{\mathrel{{=}\mkern-9.5mu{\cdot}\mkern4mu}}
\begin{document}
$a\eq b$
\end{document}

在此处输入图片描述

答案3

我无法重现您的问题。这里:

\documentclass{article}
\makeatletter
\newcommand{\superimpose}[2]{%
  {\ooalign{$#1\@firstoftwo#2$\cr\hfil$#1\@secondoftwo#2$\hfil\cr}}}
\makeatother

\begin{document}
$\mathpalette\superimpose{{=}{\cdot}}$
\end{document}

点似乎放置得非常正确。但是,您可以使用例如\mskip将点向左或向右移动:

\documentclass{article}
\makeatletter
\newcommand{\superimpose}[2]{%
  {\ooalign{$#1\@firstoftwo#2$\cr\hfil$#1\@secondoftwo#2$\hfil\cr}}}
\makeatother

\begin{document}
$\mathpalette\superimpose{{=}{\cdot}}$

$\mathpalette\superimpose{{=}{\mskip5mu\cdot}}$

$\mathpalette\superimpose{{=}{\mskip-5mu\cdot}}$

\end{document}

相关内容