我是否应该将 \mathsmaller 与 \frac 中的上标和下标一起使用?

我是否应该将 \mathsmaller 与 \frac 中的上标和下标一起使用?

我不知道如何最好地格式化这个等式,如果你们这些时尚的tex-heads能够帮助我我将非常感激。

它看起来像这样:

前

我很满意,除了:

钾

我认为 2 和 0 太大,而且靠近 k。乍一看,它看起来很乱。所以我把它改了,让任何上标或下标都使用 \mathsmaller{}。它看起来像这样:

后

我现在更喜欢 k_0^2,但我不确定方程的其余部分是否一样好。但如果我从 e^{ikr} 中删除 /mathsmaller{},那么它看起来太大了,而且与 2 不一致。我应该混合搭配吗,还是有更好、更一致的方式来解决这个问题?

梅威瑟:

\documentclass{article}
\usepackage{relsize,amsmath}
\begin{document}

\newcommand{\vecr}{{\bar{r}}}
\newcommand{\vecq}{{\bar{q}}}
\newcommand{\vecE}{{\bar{E}}}
\newcommand{\veck}{{\bar{k}}}
\newcommand{\ee}{\mathrm{e}}
\newcommand{\ii}{\mathrm{i}}
\newcommand{\II}{\mathrm{I}}
\newcommand{\kk}{\mathrm{k}}
\renewcommand{\ss}{\mathrm{s}}

\begin{equation} %without mathsmaller
\vecE_{s}(\vecr,t) = \frac{k_{0}^2}{4 \pi} \frac{\ee^{\ii kr}}{r} \left( \hat{\II} - \hat{\kk}_{\ss} \hat{\kk}_{\ss} \right) \int_{V} \ee^{\ii \veck^{\prime} \cdot \vecr^{\prime}} \vecE (\vecr^{\prime},t)
\end{equation}

\begin{equation} %with mathsmaller
\vecE_{s}(\vecr,t) = \frac{k_{\mathsmaller{0}}^\mathsmaller{2}}{4 \pi} \frac{\ee^{\mathsmaller{\ii kr}}}{r} \left( \hat{\II} - \hat{\kk}_\mathsmaller{\ss} \hat{\kk}_\mathsmaller{\ss} \right) \int_{V} \ee^{\ii \veck^{\mathsmaller{\prime}} \cdot \vecr^{\mathsmaller{\prime}}} \vecE (\vecr^{\mathsmaller{\prime}},t) 
\end{equation}

\end{document}

答案1

\mathsmaller在我看来(当然不是那么谦虚和毫无歉意的主观......),表达式的下标和上标位置带来的改进k_0^2还不够。具体来说,我认为下标0和上标都“蹲”得太低了。考虑向分子2添加指令:\mathstrut

k_{\mathsmaller 0}^{\mathstrut \mathsmaller 2}

如下面的截图所示,插入 之后,0和术语都不再看起来像是蹲着的。2\mathstrut

如果您喜欢这种外观并且有很多这样的术语,您可以定义一个名为的快捷宏\kzerosq,以简化该术语的重复输入。

在此处输入图片描述

\documentclass{article}
\usepackage{relsize,amsmath}
\newcommand\kzerosq%
  {k_{\mathsmaller 0}^{\mathstrut \mathsmaller 2}}

\begin{document}

$k_0^2$ vs.\ $k_{\mathsmaller 0}^{\mathsmaller 2}$ vs.\ $k_{\mathsmaller 0}^{\mathstrut \mathsmaller 2}$

\bigskip
$\displaystyle
\frac{k_{0}^2}{4 \pi} 
\text{ vs.\ }
\frac{k_{\mathsmaller0}^{\mathsmaller2}}{4 \pi} 
\text{ vs.\ }
\frac{\kzerosq}{4 \pi}$

\end{document}

答案2

这是一个切换到\scriptscriptstyle而不是 \scriptstyle 的解决方案for digits only,这要归功于我从 @egreg 借用并改编的代码。顺便说一句,我认为与其使用\bar,不如使用\widebar字体mathxmathabx包,它不存在于基本字体中)和\widehat相同字体(我认为基本字体中的字体太宽了)。

比较:

\documentclass{article}
\usepackage{relsize,amsmath}

\makeatletter
\def\changedigit#1{%
  \begingroup\uccode`~=`#1\uppercase{\endgroup
    \edef~}{{\mathchoice
      {\mathchar\the\mathcode`#1}
      {\mathchar\the\mathcode`#1}
      {\scriptscriptstyle\mathchar\the\mathcode`#1}
      {\mathchar\the\mathcode`#1}
    }}
  \AtBeginDocument{\mathcode`#1=\string"8000 }
} 
\@for\next:=1,2,3,4,5,6,7,8,9,0\do{\expandafter\changedigit\next}
\let\changedigit\@undefined
\makeatother

\DeclareFontFamily{U}{mathx}{\hyphenchar\font45}
\DeclareFontShape{U}{mathx}{m}{n}{ <->  mathx10}{}
\DeclareSymbolFont{mathx}{U}{mathx}{m}{n}
\DeclareFontSubstitution{U}{mathx}{m}{n}
\DeclareMathAccent{\widebar}{0}{mathx}{"73}
\DeclareMathAccent{\widehat}{0}{mathx}{"70}

\newcommand{\vvecr}{{\widebar{r}}}
\newcommand{\vvecq}{{\widebar{q}}}
\newcommand{\vvecE}{{\widebar{E}}}
\newcommand{\vveck}{{\widebar{k}}}

\begin{document}

\newcommand{\vecr}{{\bar{r}}}
\newcommand{\vecq}{{\bar{q}}}
\newcommand{\vecE}{{\bar{E}}}
\newcommand{\veck}{{\bar{k}}}
\newcommand{\ee}{\mathrm{e}}
\newcommand{\ii}{\mathrm{i}}
\newcommand{\II}{\mathrm{I}}
\newcommand{\kk}{\mathrm{k}}
\renewcommand{\ss}{\mathrm{s}}

\begin{equation}
\vvecE_{s}(\vecr,t) = \frac{k_{0}^{2}}{4 \pi} \frac{\ee^{\ii kr}}{r} \left( \widehat{\II} - \widehat{\kk}_{\ss} \widehat{\kk}_{\ss} \right) \int_{V} \ee^{\ii \vveck^{\prime} \cdot \vvecr^{\prime}} \vvecE (\vecr^{\prime},t)
\end{equation}
\vskip 1cm

With \texttt{\textbackslash mathsmaller}:
\begin{equation} %with mathsmaller
\vecE_{s}(\vecr,t) = \frac{k_{\mathsmaller{0}}^\mathsmaller{2}}{4 \pi} \frac{\ee^{\mathsmaller{\ii kr}}}{r} \left( \hat{\II} - \hat{\kk}_\mathsmaller{\ss} \hat{\kk}_\mathsmaller{\ss} \right) \int_{V} \ee^{\ii \veck^{\mathsmaller{\prime}} \cdot \vecr^{\mathsmaller{\prime}}} \vecE (\vecr^{\mathsmaller{\prime}},t)
\end{equation}

\end{document} 

在此处输入图片描述

相关内容