我正在使用环境排版一些数学方程式\begin{align*}
。为了使步骤清晰,我在上面添加了文本=, \leq, \geq
,但我在对齐它们时遇到了麻烦,例如:
\begin{align*}
x_1 + x_2
\overset{\text{some text}}=& 2y^3 \leq\\
\overset{\text{some longer text}}\leq& 3z
\end{align*}
结果是,\leq
没有居中,=
符号在上面。有没有巧妙的方法可以解决这个问题?在某些不同情况下,我使用这种方法:
\begin{align*}
x_1 + x_2
\overset{\text{some text}}=& 2y^3 \leq\\
\overset{\phantom{\text{some text}}}\leq& 3z
\end{align*}
但我不认为在第一个例子中添加一些幻影角色是一个好方法。
答案1
该解决方案建议使用makebox
可以根据需要调整宽度的地方。
代码
\documentclass[12pt]{article}
\usepackage[margin=1cm,paper size={10cm,10cm}]{geometry}
\usepackage{amsmath,amssymb}
\thispagestyle{empty}
\begin{document}
{\bf OP:}
\begin{align*}
x_1 + x_2
\overset{\text{some text}}=& 2y^3 \leq\\
\overset{\text{some longer text}}\leq& 3z
\end{align*}
{\bf Use of makebox:}
\begin{align*}
x_1 + x_2
\makebox[3cm][c]{$\overset{\text{some text}} = $} &2y^3 \leq\\
\makebox[3cm][c]{$\overset{\text{some longe text}} \leq$} & 3z
\end{align*}
\end{document}
答案2
我不确定这是否是您想要的,但您可以使用tabular
环境:
\begin{tabular}{r c l}
$x_1 + x_2$ & $ \overset{\text{some text}}= $ & $2y^3 \leq$ \\
& $ \overset{\text{some longer text}}\leq $ & $3z$
\end{tabular}
然后,您将它们一个置于另一个上方并居中,但第一行中的 = 周围有多余的空间。
或者,正如 Egreg 所建议的那样,array
$
\begin{array}{@{}r@{}>{{}}c<{{}}@{}l@{}}
x_1 + x_2 & \overset{\text{some text}}= & 2y^3 \leq \\
& \overset{\text{some longer text}}\leq & 3z
\end{array}
$