
我想創建命令來產生最後帶有下標的上劃線(分別是寬帽或箭頭)。命令
\overline{X}^{1} \widehat{X}^{2} \overrightarrow{X}^{3}
不適合我的需要,因為下標應該由上劃線控制(分別是寬帽子,右箭頭)。理想情況下我想要一個像這樣的命令
\myoverline_{1}{X} \mywidehat_{2}{X} \myoverrightarrow_{3}{X}
最乾淨的方法是什麼?
PS我能找到的最接近的東西是這個問題。
更新這是我希望獲得的圖片:
答案1
正如您似乎指出的那樣,這種方法為“上劃線”提供了下標。透過此實現,上劃線厚度為 0.4pt,可以更改。下標底部比參數頂部低 1.5pt。 2pt 設定決定上劃線相對於下標的垂直位置。
\documentclass{article}
\usepackage{stackengine}
\stackMath
\newcommand\subline[2]{\stackon[-1.5pt]{#1}{\rule[2pt]{\widthof{$#1$}}{.4pt}_{#2}}}
\begin{document}
\renewcommand\stackalignment{l}
$A = \subline{X}{1} \subline{g}{2} \subline{Xyzq}{12}$
\end{document}
對於 Widehat,我採用了一些不同的方法,並增加了該scalerel
套件的使用。此參數\hatgap
給出了項目和帽子之間的垂直間隙,並\subdown
給出了下標相對於帽子的相對位置。
\documentclass{article}
\usepackage{scalerel}
\usepackage{stackengine}
\stackMath
\def\hatgap{2pt}
\def\subdown{-2pt}
\newcommand\reallywidehat[2][]{%
\renewcommand\stackalignment{l}%
\stackon[\hatgap]{#2}{%
\stretchto{%
\scalerel*[\widthof{$#2$}]{\kern-.6pt\bigwedge\kern-.6pt}%
{\rule[-\textheight/2]{1ex}{\textheight}}%WIDTH-LIMITED BIG WEDGE
}{0.5ex}% THIS SQUEEZES THE WEDGE TO 0.5ex HEIGHT
_{\smash{\belowbaseline[\subdown]{\scriptstyle#1}}}%
}}
\begin{document}
$\reallywidehat[1]{zbcdklm} \times
\reallywidehat[ijk]{zbcdefghijk} =
\reallywidehat{zb}$
\end{document}
Widehat 編輯非常鬆散地基於我的解決方案非常寬的帽子符號,儘管這種實現優於那個實現。
答案2
你的例子看起來很像一個帶有(凸起的)\overline
和我將要建造的基本符號的上標的符號。
第二張圖片可能就夠了:
\documentclass{article}
\begin{document}
$\overline{\mathrm{X}\vphantom{()}}^1
\quad
\smash{\overline{\mathrm{X}\vphantom{()}}}\vphantom{X}^1$
\end{document}