
Я хотел бы создать команды для создания надстрочных линий (соответственно широких шляп или стрелок) с нижним индексом в конце. Команды
\overline{X}^{1} \widehat{X}^{2} \overrightarrow{X}^{3}
не подходят для моих нужд, так как подстрочные знаки должны контролироваться верхней чертой (соответственно, широкая шляпа, правая стрелка). В идеале я хотел бы иметь команду типа
\myoverline_{1}{X} \mywidehat_{2}{X} \myoverrightarrow_{3}{X}
Какой способ сделать это будет наиболее чистым?
PS Самое близкое, что мне удалось найти, этовопрос.
ОбновлятьВот фотография того, что я хочу получить:
решение1
Этот подход дает нижний индекс "верхней черте", как вы, кажется, указали. При такой реализации толщина верхней черты составляет .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}
EDIT Widehat в значительной степени основан на моем решенииСимвол действительно широкой шляпы, хотя эта реализация лучше той.
решение2
Ваш пример выглядит достаточно похожим на символ с (приподнятым) \overline
и надстрочным индексом к базовому символу, поэтому я собираюсь его построить.
второго изображения может быть достаточно:
\documentclass{article}
\begin{document}
$\overline{\mathrm{X}\vphantom{()}}^1
\quad
\smash{\overline{\mathrm{X}\vphantom{()}}}\vphantom{X}^1$
\end{document}