垂直缩放重音,但保持与符号的距离相等

垂直缩放重音,但保持与符号的距离相等

我需要一个\tilde更引人注目的东西,为什么我尝试过这个答案与 结合使用scalebox。但是,随着垂直缩放,符号和重音符之间的垂直距离也会增加。我该如何避免这种情况?我试过了\smashraisebox但没有效果。

平均能量损失

\documentclass{article}

\usepackage{amsmath}
\usepackage{accents}
\usepackage{graphicx}

\DeclareRobustCommand*{\vartilde}[1]{\accentset{\smash{\scalebox{0.8}[1.4]{\ensuremath{\sim}}}}{#1}}

\begin{document}    

$ \tilde{q}^{\,+|-}_j $ \quad vs. \quad $ \vartilde{q}^{\,+|-}_j $

\end{document}

在此处输入图片描述

非常感谢!

答案1

问题在于 周围的垂直空白\sim。您可以使用包\trimbox中的命令trimclip进行调整:

在此处输入图片描述

如果你希望在\sim和 下面的字母之间留出更多空间,减少.3ex命令中的值\trimbox

以下是代码:

\documentclass{article}

\usepackage{amsmath}
\usepackage{accents}
\usepackage{graphicx}
\usepackage{trimclip}

\DeclareRobustCommand*{\vartilde}[1]{\accentset{\scalebox{0.8}[1.4]{\trimbox{0pt .3ex}{\ensuremath{\sim}}}}{#1}}

\begin{document}    

$ \tilde{q}^{\,+|-}_j $ \quad vs. \quad $ \vartilde{q}^{\,+|-}_j $

\end{document}

请注意,如果重音出现在 scriptstyle 或 scriptscriptstyle 中,则不会缩放。如果您需要这些,您可以使用\mathchoice

\DeclareRobustCommand*{\vartilde}[1]{\mathchoice
{\accentset{\scalebox{0.8}[1.4]{\trimbox{0pt .3ex}{\ensuremath{\sim}}}}{#1}}
{\accentset{\scalebox{0.8}[1.4]{\trimbox{0pt .3ex}{\ensuremath{\sim}}}}{#1}}
{\accentset{\scalebox{0.6}[1]{\trimbox{0pt .3ex}{\ensuremath{\sim}}}}{#1}}
{\accentset{\scalebox{0.4}[.7]{\trimbox{0pt .3ex}{\ensuremath{\sim}}}}{#1}}
}

在此处输入图片描述

您可以根据自己的喜好调整每种风格的比例和间距。

答案2

只需使用\widetilde

\documentclass{article}

\usepackage{amsmath}
\usepackage{accents}
\usepackage{graphicx}

\DeclareRobustCommand*{\vartilde}[1]{\accentset{\smash{\scalebox{0.8}[1.4]{\ensuremath{\sim}}}}{#1}}

\begin{document}

$ \tilde{q}^{\,+|-}_j $ \quad vs. \quad $ \vartilde{q}^{\,+|-}_j $\quad vs. \quad $ \widetilde{q}^{\,+|-}_j $

\end{document} 

在此处输入图片描述

答案3

您可以使用\vbox{\hbox{...}\kern-1pt}以下构造:

\DeclareRobustCommand*{\vartilde}[1]
    {\accentset{\scalebox{.8}[1.4]{\vbox{\hbox{$\sim$}\kern-1pt}}}{#1}}

相关内容