Blacktriangleright 太大,带有 stix

Blacktriangleright 太大,带有 stix

我想\blacktriangleright使用 stix 创建一个较小的。

我尝试过

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}
\begin{document}
\[\blacktriangleright,\Scale[0.75]{\blacktriangleright}\]
\end{document}

但结果是这样的:不幸的\Scale[0.75]{\blacktriangleright}是 比 稍微低一点,这就是,如果我从 的尖端到\blacktriangleright画一条线,这条线是斜的,或者说,这些尖端没有对齐。\Scale[0.75]{\blacktriangleright}\blacktriangleright

我想创建一个 LaTeX 函数来调整 #1 的大小,其中 #1 是一个对象,例如,\blacktriangleright或者其他东西,例如\sum,\prod,\int,\oiiint,...。

我该怎么办?

我接受任何建议。

答案1

我猜测了 的定义\Scale

您很可能想要\vcenter缩放的符号。

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}
\usepackage{graphicx}

\makeatletter
\newcommand{\Scale}[2][1]{\scalebox{#1}{$\m@th#2$}}
\makeatother

\newcommand{\sblacktriangleright}{%
  \vcenter{\hbox{\Scale[0.75]{\blacktriangleright}}}%
}

\begin{document}

\[
\blacktriangleright,\sblacktriangleright
\]

\end{document}

在此处输入图片描述

一个可能的改进。我定义了一个\Scalecenter宏,使符号垂直居中,但也根据数学样式(例如,下标和上标)适当地改变大小。

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}
\usepackage{graphicx}

\makeatletter
\newcommand{\Scalecenter}[2][1]{\mathpalette\Scalecenter@{{#1}{#2}}}
\newcommand{\Scalecenter@}[2]{\Scalecenter@@#1#2}
\newcommand{\Scalecenter@@}[3]{%
  \vcenter{\hbox{\scalebox{#2}{$\m@th#1#3$}}}%
}
\makeatother

\newcommand{\sblacktriangleright}{%
  \Scalecenter[0.75]{\blacktriangleright}%
}

\begin{document}

\[
\blacktriangleright,\sblacktriangleright
\quad
\scriptstyle
\blacktriangleright,\sblacktriangleright
\quad
\scriptscriptstyle
\blacktriangleright,\sblacktriangleright
\]

\end{document}

在此处输入图片描述

还需要做更多的工作来设置适当的数学类型。

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}
\usepackage{graphicx}

\makeatletter
\newcommand{\Scalecenter}[3]{#1{\mathpalette\Scalecenter@{{#2}{#3}}}}
\newcommand{\Scalecenter@}[2]{\Scalecenter@@#1#2}
\newcommand{\Scalecenter@@}[3]{%
  \vcenter{\hbox{\scalebox{#2}{$\m@th#1#3$}}}%
}

\newcommand{\sblacktriangleright}{%
  \Scalecenter{\mathord}{0.75}{\blacktriangleright}%
}
\newcommand{\ssum}{%
  \DOTSB\Scalecenter{\mathop}{0.75}{\sum}\slimits@
}
\newcommand{\sotimes}{\Scalecenter{\mathbin}{0.5}{\otimes}}
\makeatother

\begin{document}

\[
\blacktriangleright,\sblacktriangleright
\quad
\scriptstyle
\blacktriangleright,\sblacktriangleright
\quad
\scriptscriptstyle
\blacktriangleright,\sblacktriangleright
\]
\[
\sum_{k=1}^n x_k\otimes y_k \quad \ssum_{k=1}^n x_k\sotimes y_k
\]


\end{document}

在此处输入图片描述

可能你不知道\DOTSB\slimits@的用途。它们必须保持同步amsmath

答案2

可以尝试类似的方法,调整您想要的大小:

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}

\begin{document}
\resizebox{.4\textwidth}{!}{$\dot{\rho}=
\dfrac{x^3}{45a^9-23b}$}
\end{document}

或者如果你想要使其成为命令:

\documentclass{article}
\usepackage{stix}
\usepackage{mathtools}
\newcommand{\res}[2]{\resizebox{#1\textwidth}{!}{#2}}

\begin{document}
\res{0.5}{$\dot{\rho}=
\dfrac{x^3}{45a^9-23b}$}
\end{document}

答案3

您也可以使用\smallblacktriangleright

相关内容