我希望下一个文档中的水平线垂直对齐
\documentclass{standalone}
\begin{document}
\Huge
$\overline{z\,z'} = \overline{z} \, \overline{z'}$
\end{document}
z 上方的横线比其他横线低。\vphantom
\documentclass{standalone}
\begin{document}
\Huge
$\overline{z\,z'} = \overline{\vphantom{z'}z\,z'}
= \overline{\vphantom{z'}z} \, \overline{\vphantom{z'}z'}$
\end{document}
右侧的两个条形图垂直对齐,但是与第一个条形图不对齐。
- 为什么最右边的杆太高了?
- 我怎样才能获得与第一个相同的高度?
答案1
您正在制作一个比下面的上标\vphantom{z'}
更高的支柱,因为它们以狭窄的风格设置。z'
\overline
LuaTeX 有一个原语来强制使用狭窄的风格,但是mathtools
还有一个宏\cramped
可以强制使用基本相同的布局。
\documentclass{standalone}
\usepackage{mathtools}
\begin{document}
\Huge
$\overline{z\,z'} = \overline{\vphantom{\cramped{z'}}z\,z'}
= \overline{\vphantom{\cramped{z'}}z} \, \overline{\vphantom{\cramped{z'}}z'}$
\end{document}
答案2
作为替代方案,我创建了\altoverline
将上线放置在基线上方固定高度的功能。此处选择的默认值是22pt
。可以使用可选参数或通过重新定义来覆盖它\altlineht
。
\documentclass{article}
\usepackage{amsmath,stackengine}
\def\altlineht{22pt}
\newcommand\altoverline[2][\altlineht]{\sbox0{$#2$}%
\ensurestackMath{\stackengine{22pt}{#2}%
{\rule{\wd0}{.5pt}}{O}{c}{F}{F}{L}}%
}
\begin{document}
\Huge
$\altoverline{z\,z'} = \altoverline{z} \, \altoverline{z'}$
\end{document}