我想在数学模式下将一些公式放在波浪符号上方,并将波浪符号的长度调整为该公式的长度。这似乎\widetilde{}
几乎就是我需要的,但是它将公式放在波浪符号下方。有没有办法真正将公式放在上面?
上面公式的一个例子是:
\widetilde{(p_1',p_2') \in C}
编辑:我不太清楚预期的效果。我想在行中间添加波浪线(就像这样\sim
做的),但是要使用上面的公式。
答案1
我回答了数学模式中的大波浪符号并做了两处更改:1)我将其从堆叠上方改为堆叠下方;2)我将垂直堆叠间隙增加到\LMpt
,即按本地数学样式缩放 1pt。
\documentclass{article}
\usepackage{scalerel}[2014/03/10]
\usepackage{stackengine}
\newcommand\reallywidetilde[1]{\ThisStyle{%
\setbox0=\hbox{$\SavedStyle#1$}%
\stackengine{\LMpt}{$\SavedStyle#1$}{%
\stretchto{\scaleto{\SavedStyle\mkern.2mu\sim}{.5467\wd0}}{.7\ht0}%
% .2mu is the kern imbalance when clipping white space
% .5467++++ is \ht/[kerned \wd] aspect ratio for \sim glyph
}{U}{c}{F}{T}{S}%
}}
\def\test#1{$%
\reallywidetilde{#1}\,
\scriptstyle\reallywidetilde{#1}\,
\scriptscriptstyle\reallywidetilde{#1}
$\par}
\parskip 1ex
\begin{document}
$x = \reallywidetilde{(p_1',p_2') \in C}$
$\scriptstyle x = \reallywidetilde{(p_1',p_2') \in C}$
$\scriptscriptstyle x = \reallywidetilde{(p_1',p_2') \in C}$
\end{document}
如果您碰巧确实希望文本位于波浪号上方(而不是位于文本下方的波浪号),这也很容易:
\documentclass{article}
\usepackage{scalerel}[2014/03/10]
\usepackage{stackengine}
\newcommand\reallywidetilde[1]{\ThisStyle{%
\setbox0=\hbox{$\SavedStyle#1$}%
\stackengine{\LMpt}{%
\stretchto{\scaleto{\SavedStyle\mkern.2mu\sim}{.5467\wd0}}{.7\ht0}%
}{$\SavedStyle#1$%
% .2mu is the kern imbalance when clipping white space
% .5467++++ is \ht/[kerned \wd] aspect ratio for \sim glyph
}{O}{c}{F}{T}{S}%
}}
\def\test#1{$%
\reallywidetilde{#1}\,
\scriptstyle\reallywidetilde{#1}\,
\scriptscriptstyle\reallywidetilde{#1}
$\par}
\parskip 1ex
\begin{document}
$xyz \reallywidetilde{(p_1',p_2') \in C} abc$
$xyz {\scriptstyle\reallywidetilde{(p_1',p_2') \in C}} abc$
$xyz {\scriptscriptstyle\reallywidetilde{(p_1',p_2') \in C}} abc$
\end{document}
答案2
Benjamin Bayart 设计的包装下面有它。