
끝에 아래 첨자를 사용하여 윗줄(각각 넓은 모자 또는 화살표)을 생성하는 명령을 만들고 싶습니다. 명령
\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}
widehat EDIT는 내 솔루션을 매우 느슨하게 기반으로 합니다.정말 넓은 모자 기호, 하지만 이 구현은 그 구현보다 우수합니다.
답변2
\overline
귀하의 예는 제가 구성할 기본 기호에 (돋움) 및 위 첨자가 있는 기호처럼 보입니다 .
두 번째 이미지로 충분할 수 있습니다.
\documentclass{article}
\begin{document}
$\overline{\mathrm{X}\vphantom{()}}^1
\quad
\smash{\overline{\mathrm{X}\vphantom{()}}}\vphantom{X}^1$
\end{document}