在分数中使用上标时高度不均匀

在分数中使用上标时高度不均匀

我想微调我的一些方程式,这时我遇到了这个

无子深度

请注意,导数运算符的上标非常合适,并且不会降低分母中的符号,而位于\sin^2\vartheta其他每个项的下方。我认为这是由于运算符的定义,\sin但将其替换为\mathrm{sin}仍然会产生相同的输出。

由于这个术语出现在所有类似术语的行中,因此它显得尤为突出。

到目前为止,我得到的是一个带有subdepth包的中间解决方案,它产生了

在此处输入图片描述

至少单个术语在同一行。如果能有创造性的解决方案来解决这个问题,我将不胜感激 :)

答案1

问题出在“i”中,其中上升器设置了原子核的整体高度\sin^2

您可以通过删除“i”来解决这个问题;但是,如果这样做,将会产生问题\overline{\sin x};解决方案是在真实操作符之前添加另一个幻像。我添加了一个\mathop包含真实名称幻像的原子,然后是,\!这样 TeX 在两个连续原子之间插入的细小空间\mathop就被移除了。

\documentclass{article}
\usepackage{amsmath}

\makeatletter
\newcommand{\sinname}{sin}% change here

\newcommand{\sin@name}{%
  \smash{\operator@font\sinname}\vphantom{s}%
}
\DeclareRobustCommand{\sin}{%
  \mathop{\vphantom{\operator@font\sinname}}\!%
  \qopname\relax o{\sin@name}%
}
\makeatother

\begin{document}
\begin{gather*}
\frac{1}{\sin\theta}+\frac{1}{\sin\alpha}\ne
  \frac{1}{\sin^2\theta}+\frac{1}{\sin^2\alpha}
\\
\frac{1}{\sin\theta}\frac{\partial}{\partial\theta}\ne
\frac{1}{\sin^2\theta}\frac{\partial^2}{\partial\theta^2}
\\
\sqrt{\sin\alpha}+\sqrt{\cos\alpha}
\\
\frac{1}{\sqrt{\sin\alpha}}+\frac{1}{\sqrt{\cos\alpha}}
\\
\overline{\sin\alpha}
\end{gather*}
\end{document}

在此处输入图片描述

世上没有十全十美的事!你可以看到第三行的平方根符号在不同的高度。一个可能的解决方案是重新定义\cos为具有相同的高度\sin

\DeclareRobustCommand{\cos}{%
  \mathop{\vphantom{\operator@font\sinname}}\!%
  \qopname\relax o{cos}%
}

由于一些印刷传统使用不同的标签\sin(可能是“sen”),我仅提供\sinname不需要\cos更改名称的标签。

\sin根据此定义,上划线将与处于同一级别\cos,这可能是我们所希望的,也可能不是我们所希望的。

答案2

显然 (;-) @egreg 的回答很棒,直奔主题,但它确实有一个无限小的缺点:尝试的变态$\overline{\sin x}$会大吃一惊。此外,有人可能会说,部首符号的位置$\sqrt{\sin x}$不是最佳的。

数学公式中上标的定位是 TeX 的一个非常低级的特性,它和数学排版的许多其他“私密”细节一起在附录 G 中进行了描述。TeXbook,请参考以下解决方案的解释。

\documentclass[a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}

% egreg's recipe:
\makeatletter
\DeclareRobustCommand{\sinname}{%
  \smash{\operator@font sin}\vphantom{s}%
}
% ... but let us use a different name for the operator:
\newcommand{\ssin}{\qopname\relax o{\sinname}}
\makeatother

% Our recipe:
\setbox0 = \hbox{$$} % load math fonts
\fontdimen18\scriptfont2 = 3.78970pt % turns out to be just enough

\begin{document}

The downside in egreg's answer:
\[\sqrt{\sin x}+\sqrt{\ssin x} + \overline{\sin x}+\overline{\ssin x}\]
That's not fine.

But, with our correction, the exponent of the ``usual'' \verb|\sin| will not be 
rised that much:
\[ \frac{1}{\cos^{2}x} + \frac{1}{\sin^{2}x} + \frac{1}{x^{2}} \]
For an explanation, see \textsl{The \TeX book}, Appendix~G, Rule~18a; the
relevant passage is ``set \( u\gets h-q \)\,\ldots\ where $q$\,\ldots\ [is] the
[value] of~$\sigma_{18}$\,\ldots\ in the font corresponding to
[style]~$C{\uparrow}$''.  What we are doing is to increase~$q$.  The amended
value of~$u$ will be subsequently used in Rule~18c to position the superscript.

\end{document}

输出如下:

代码输出

我们再放大一下关键部分:

上述内容的详细信息

当然,这种解决方案也可能有缺点:以这种方式改变在如此低的 TeX 级别上运行的参数可能会导致乍一看并不明显的副作用。

答案3

您可以使用字体尺寸 11 来调整分母的剩余空间,

在此处输入图片描述

\documentclass{article}
\sbox0{$1$}


\fontdimen11\textfont2=8pt

\begin{document}

\[
\frac{1}{\sin\vartheta}
\frac{1}{\sin^{2}\vartheta}
\]

\end{document}

答案4

我不知道这个\sin^2语法,因此我以前从未见过这个问题。您可能想更改为更常见的内容,如下面的 MWE 中所示。另一个问题同时得到修复,因为您不必补偿该正弦项的夸大上标。

% arara: pdflatex

\documentclass{article}
\usepackage{mathtools}

\begin{document}
\[
    \frac{1}{\sin\vartheta}\frac{\partial}{\partial\vartheta} \text{ vs. }\frac{1}{\sin(\vartheta)^2}\frac{\partial}{\partial\vartheta^2}
\]
\end{document}

在此处输入图片描述


如果您想坚持这种语法,您必须在最左边的术语中添加一个支撑。这将模仿右侧的上标,并使所有内容完美对齐(您仍然需要修复subdepth)。

\frac{1}{\sin^{\vphantom{2}}\vartheta}

@egreg 刚刚告诉我,可以重新定义\sin

\def\sin{\mathop{\smash{\mathrm{sin}}\vphantom{s}}\nolimits}

以便正确执行此操作。但是不建议这样做。如果您重新定义一些核心命令,您应该非常清楚自己在做什么。

相关内容