![适当缩放自己的数学符号/图像](https://linux22.com/image/418004/%E9%80%82%E5%BD%93%E7%BC%A9%E6%94%BE%E8%87%AA%E5%B7%B1%E7%9A%84%E6%95%B0%E5%AD%A6%E7%AC%A6%E5%8F%B7%2F%E5%9B%BE%E5%83%8F.png)
在此线我们学习了如何创建自己的数学符号。现在的问题是,当用于下标或上标时,如何强制它适当缩放:
请参阅以下示例:
\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}