考虑一下这个MWE:
\documentclass[12pt,letterpaper]{article}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{scalerel}
\usepackage{amsmath}
\usepackage{scalerel}
\newcommand{\smallrel}[1]{\mathop{\scaleobj{0.5}{#1}}}
\newcommand{\smalltimes}{\smallrel{\times}}
\begin{document}
\begin{equation*}
a\smalltimes b + c\smalltimes d = e
\end{equation*}
\end{document}
它产生如下输出:
我如何才能使小乘号符号相对于正常加号符号正确对齐?
答案1
\scalebox
以下是使用包提供的宏的解决方案graphicx
。该解决方案采用\vcenter
“原始”指令将其参数置于数学轴的中心。
我还将默认缩放因子设置为0.8
,这0.5
对我来说似乎有点极端。(当然,您可以随意更改默认缩放因子以满足您的需求和偏好。)对于 的任何实例,可以“动态”覆盖缩放因子。\smalltimes
如果符号需要出现在第一和第二级下标或上标位置(希望不是经常出现!),这将很有用。由于\scriptstyle
和\scriptscriptstyle
比 分别小 30% 和 50% \textstyle
,只需将您首选的缩放因子分别乘以 0.7 和 0.5,即可获得\smalltimes
第一和第二级下标或上标材料的正确大小。
\documentclass{article}
\usepackage{graphicx} % for "\scalebox" macro
% Default scaling factor: 0.8
\newcommand{\smalltimes}[1][0.8]{%
\mathbin{\vcenter{\hbox{\scalebox{#1}{$\times$}}}}}
\begin{document}
$a\smalltimes b + c\smalltimes d = e $
$\scriptstyle a\smalltimes[0.56] b + c\smalltimes[0.56] d = e$ % .7*.8=.56
$\scriptscriptstyle a\smalltimes[0.4] b + c\smalltimes[0.4] d = e$ % .5*.8=.4
\end{document}
答案2
此答案基于这个答案。
\documentclass[12pt,letterpaper]{article}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{scalerel}
\usepackage{amsmath}
\newcommand{\smallrel}[1]{\mathop{\scaleobj{0.5}{#1}}}
\makeatletter
\newcommand{\smalltimes}{\mathbin{\mathpalette\@smalltimes\relax}}
\newcommand{\@smalltimes}{%
\raisebox{.4\height}{$\smallrel{\times}$}}
\makeatother
\begin{document}
\begin{equation*}
a\smalltimes b + c\smalltimes d = e
\end{equation*}
\end{document}
答案3
这是一个对您当前所处的风格很敏感的版本。否则,重新缩放的行为会有所不同(例如),具体取决于您是处于正常大小的数学中还是指数中。
\usepackage{scalerel}
\newcommand{\smalltimes}{\ThisStyle{\scaleobj{0.63}{\raisebox{2.7pt}{$\boldsymbol{\SavedStyle\times}$}}}}
您可以根据自己的喜好调整数字!