在此线我们学习了如何创建自己的数学符号。现在的问题是,当用于下标或上标时,如何强制它适当缩放:
请参阅以下示例:
\documentclass[12pt]{article}%, border=2pt]{standalone}
\usepackage{graphics}
\DeclareRobustCommand{\triangleLeft}{\ensuremath{\includegraphics{triangleLeft}}}
\begin{document}
$\triangleLeft_{x}$
$X_{\triangleLeft_{x}}$
\begin{figure}
\caption{$\triangleLeft_{x}$ test}
\end{figure}
\end{document}
正如我们在结果中看到的。图像在下标中同样大,但应该缩小一点。
你知道我该如何修复这个问题吗?
谨致问候并致谢,Max
答案1
的功能scalerel
可以实现这一点。
\documentclass[12pt]{article}%, border=2pt]{standalone}
\usepackage{MnSymbol}
\usepackage{sansmath}
\usepackage{stackengine, amsfonts,scalerel} %
\newcommand{\leftharpoontriangleX}{\mathord{\ensurestackMath{%
\stackinset{c}{0pt}{c}{-0.3ex}{\scriptstyle\leftharpoonup}%
{\largetriangleup}}}}
\newcommand{\rightharpoontriangleX}{\mathord{\ensurestackMath{%
\stackinset{c}{0pt}{c}{-0.3ex}{\scriptstyle\rightharpoonup}%
{\largetriangleup}}}}
\newcommand{\leftharpoontriangle}{%
\scalerel*{\leftharpoontriangleX}{\largetriangleup}}
\newcommand{\rightharpoontriangle}%
{\scalerel*{\rightharpoontriangleX}{\largetriangleup}}
\begin{document}
\sansmath
$ \rightharpoontriangle_{\!x}\quad\leftharpoontriangle_{\!x}$
$ x_{\rightharpoontriangle}\quad x_{\leftharpoontriangle}$
$ y_{ x_{\rightharpoontriangle}\quad x_{\leftharpoontriangle}}$
\end{document}