如何装饰 \sim $\sim$ 上方和下方的文本,例如 xrightarrow?

如何装饰 \sim $\sim$ 上方和下方的文本,例如 xrightarrow?

就像\xrightarrow允许用上面和下面的文字装饰\rightarrow一样,我想对\sim或者做同样的事情\rightarrow

有没有简单的方法可以做到这一点?

\simPS:我可以通过以下方式获得固定长度

$A \overset{x}{\underset{\mathclap{\varphi}}{\sim}} B$

答案1

以下代码定义了一个名为 的用户命令extoverset,它接受两个强制参数,其作用类似于\overset,只不过它会将第二个参数(例如\sim)的宽度拉伸至等于第一个参数的宽度。可选的第三个参数可用于微调结果宽度。

当然不是完美的——但希望这是一个(不错的?)开始。

在此处输入图片描述

\documentclass{article}
\usepackage{amsmath}    % for '\overset' macro
\usepackage{calc}       % for '\widthof' macro
\usepackage{graphicx}   % for '\resizebox' macro

\newcommand\xxoverset[3]{%
  \resizebox{#1+\widthof{\scriptsize #2}}{\height}{$#3$}}
\newcommand\extoverset[3][0pt]{%
  \mathrel{\overset{\textup{#2}}{\xxoverset{#1}{#2}{#3}}}}

\begin{document}
\obeylines % just for this example
$A \overset{aa}{\sim} B$
$A \extoverset{$aa$}{\sim} B$
$A \extoverset[6pt]{long expression}{\sim} B$
$A \extoverset[8pt]{long expression}{=} B$
\end{document}

相关内容