为什么 \left 和 \right 在基线下添加了这么多额外空间?

为什么 \left 和 \right 在基线下添加了这么多额外空间?

当我写作时

\[
\left \lVert \overrightarrow{\nabla} \right \rVert
\]

我在基线下获得了太多的额外空间:

基线以下

为什么会发生这种情况?我该如何解决?

答案1

栅栏相对于公式轴(分数线所在的假想线)对称。对于\overrightarrow{\nabla},所选的尺寸与 相同\Bigg,后者沿公式轴向下延伸。

栅栏没有必要覆盖整个建筑物,特别是箭头。

这是一个可视化示例,我使用了(that loads )\DeclarePairedDelimiter提供的便捷函数。我还使用了较小的箭头,如mathtoolsamsmathhttps://tex.stackexchange.com/a/248297/4427

\documentclass{article}
\usepackage{mathtools}

\DeclarePairedDelimiter{\norm}{\lVert}{\rVert}

\makeatletter
\newcommand{\overrightsmallarrow}{\mathpalette{\overarrowsmall@\rightarrowfill@}}
\newcommand{\overarrowsmall@}[3]{%
  \vbox{%
    \ialign{%
      ##\crcr
      #1{\smaller@style{#2}}\crcr
      \noalign{\nointerlineskip\vskip1pt}%
      $\m@th\hfil#2#3\hfil$\crcr
    }%
  }%
}
\def\smaller@style#1{%
  \ifx#1\displaystyle\scriptstyle\else
    \ifx#1\textstyle\scriptstyle\else
      \scriptscriptstyle
    \fi
  \fi
}
\makeatother

\begin{document}

\begin{gather*}
\norm{\overrightsmallarrow{\nabla}}\quad
\norm[\big]{\overrightsmallarrow{\nabla}}\quad
\norm[\Big]{\overrightsmallarrow{\nabla}}\quad
\norm*{\overrightsmallarrow{\nabla}}
\\
\norm{\overrightsmallarrow{x}}\quad
\norm[\big]{\overrightsmallarrow{x}}\quad
\norm[\Big]{\overrightsmallarrow{x}}\quad
\norm*{\overrightsmallarrow{x}}
\\
\norm{\overrightsmallarrow{X}}\quad
\norm[\big]{\overrightsmallarrow{X}}\quad
\norm[\Big]{\overrightsmallarrow{X}}\quad
\norm*{\overrightsmallarrow{X}}
\end{gather*}

\end{document}

在此处输入图片描述

我毫不怀疑正常版本是正确的。

相关内容