\bar 和 \overline

\bar 和 \overline

如果我写入$\bar{X}$$\overline{X}$X 上的条(或规则)小于或长于 X 的宽度。有什么方法可以调整宽度?

先感谢您。

平均能量损失

\documentclass{article}
\usepackage{amsmath,amsfonts,mathtools}

\begin{document}

$\bar{X}$ $\overline{X}$

\end{document}

答案1

倾斜使得条形的正确长度更加复杂。以下示例测量直立 X 的宽度,并将其用作条形的长度。该解决方案也适用于不同的数学样式:

\documentclass{article}
\usepackage{amsmath,amsfonts,mathtools}

\makeatletter
\newcommand*{\Xbar}{}%
\DeclareRobustCommand*{\Xbar}{%
  \mathpalette\@Xbar{}%
}
\newcommand*{\@Xbar}[2]{%
  % #1: math style
  % #2: unused (empty)
  \sbox0{$#1\mathrm{X}\m@th$}%
  \sbox2{$#1X\m@th$}%
  \rlap{%
    \hbox to\wd2{%
      \hfill
      $\overline{%
        \vrule width 0pt height\ht0 %
        \kern\wd0 %
      }$%
    }%
  }%
  \copy2 %
}
\makeatother

\begin{document}

$\bar{X}$ $\overline{X}$

$\Xbar\scriptstyle\Xbar\scriptscriptstyle\Xbar$

\end{document}

结果

答案2

我需要布尔代数中变量的上划线短一点,以清楚地表明变量是单独反转的。我定义了以下命令:

\newcommand{\olsi}[1]{\,\overline{\!{#1}}} % overline short italic

它是专门为斜体排版的变量设计的,所以它不仅在上方,而且在右上方。所以直立字符需要不同的定义:

\newcommand{\ols}[1]{\mskip.5\thinmuskip\overline{\mskip-.5\thinmuskip {#1} \mskip-.5\thinmuskip}\mskip.5\thinmuskip} % overline short

例子:

$ \olsi{x+y} = \olsi{x}\olsi{y} $

呈现为:

短上划线示例

我希望这能有所帮助。

相关内容