我有一个包含两行的对齐环境,并且在这两行之间,我想在它自己的行上包含一些纯文本,并且它应该在该行居中。
\newcommand{\tu}{\uptau}
\newcommand{\sgm}{\upsigma}
\newcommand{\txtn}{\textnormal}
\begin{document}
\begin{align*}
& \tu \sgm_{r_1} \tu^{-1} = \txtn{(2 3 5)(4 7 6)(1 2 3 4)(5 8 7 6)(5 3 2)(6 7 4) = (1 3 5 7)(2 8 6 4)} = \sgm_{r_2} \\
\txtn{and} \\
& \tu \sgm_{s_1} \tu^{-1} = \txtn{(2 3 5)(4 7 6)(1 5)(2 6)(3 7)(4 8) = (1 2)(3 4)(5 6)(7 8)} = \sgm_{s_2}.
\end{align*}
\end{document}
这会导致单词“and”一直显示在左侧,但我希望它居中。
答案1
您可以\intertext
与一起使用\centering
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{upgreek}
\newcommand{\tu}{\uptau}
\newcommand{\sgm}{\upsigma}
\newcommand{\txtn}{\textnormal}
\begin{document}
\begin{align*}
& \tu \sgm_{r_1} \tu^{-1} = \txtn{(2 3 5)(4 7 6)(1 2 3 4)(5 8 7 6)(5 3 2)(6 7 4) = (1 3 5 7)(2 8 6 4)} = \sgm_{r_2} \\
\intertext{\centering and}
& \tu \sgm_{s_1} \tu^{-1} = \txtn{(2 3 5)(4 7 6)(1 5)(2 6)(3 7)(4 8) = (1 2)(3 4)(5 6)(7 8)} = \sgm_{s_2}.
\end{align*}
\end{document}
或者,如果您想要更紧密的垂直间距,请包含在序言中
\usepackage{mathtools}
然后在文档中使用
\shortintertext{\centering and}
答案2
我提出了一个解决方案shortintertext
,并且对=
标志进行了另一种对齐,在我看来,这样看起来更好:
\documentclass{article}
\usepackage{mathtools}
\usepackage{makebox}
\usepackage{upgreek}
\newcommand{\tu}{\uptau}
\newcommand{\sgm}{\upsigma}
\newcommand{\txtn}{\textnormal}
\begin{document}
\begin{align*}
\tu \sgm_{r_1} \tu^{-1} & = \txtn{(2 3 5)(4 7 6)(1 2 3 4)(5 8 7 6)(5 3 2)(6 7 4) = (1 3 5 7)(2 8 6 4)} = \sgm_{r_2} \\
\shortintertext{\makebox[\linewidth]{and}}
\tu \sgm_{s_1} \tu^{-1} &= \txtn{(2 3 5)(4 7 6)(1 5)(2 6)(3 7)(4 8) = (1 2)(3 4)(5 6)(7 8)} = \sgm_{s_2}.
\end{align*}
\begin{align*}
\tu \sgm_{r_1} \tu^{-1} & = \txtn{(2 3 5)(4 7 6)(1 2 3 4)(5 8 7 6)(5 3 2)(6 7 4) = (1 3 5 7)(2 8 6 4)} = \sgm_{r_2} \\
& \makebox*{${}={}$}{and}\\
\tu \sgm_{s_1} \tu^{-1} &= \txtn{(2 3 5)(4 7 6)(1 5)(2 6)(3 7)(4 8) = (1 2)(3 4)(5 6)(7 8)} = \sgm_{s_2}.
\end{align*}
\end{document}
答案3
您可以使用array
。我还建议采用不同的方法来处理排列中的循环。
\documentclass{article}
\usepackage{amsmath}
\usepackage{upgreek}
\usepackage{lipsum}% for some context
\newcommand{\tu}{\uptau}
\newcommand{\sgm}{\upsigma}
%not \textnormal
\newcommand{\perm}[1]{%
\begingroup
\begingroup\lccode`~=` \lowercase{\endgroup\let~}\,%
\catcode` =12 \scantokens{#1}
\endgroup
}
\begin{document}
\lipsum[1][1-4]
\begin{equation*}
\begin{array}{@{}l@{}}
\tu \sgm_{r_1} \tu^{-1}
= \perm{(2 3 5)(4 7 6)(1 2 3 4)(5 8 7 6)(5 3 2)(6 7 4)}
= \perm{(1 3 5 7)(2 8 6 4)}
= \sgm_{r_2} \\[1ex]
\multicolumn{1}{c}{\text{and}} \\[1ex]
\tu \sgm_{s_1} \tu^{-1}
= \perm{(2 3 5)(4 7 6)(1 5)(2 6)(3 7)(4 8)}
= \perm{(1 2)(3 4)(5 6)(7 8)}
= \sgm_{s_2}.
\end{array}
\end{equation*}
\lipsum[2][1-4]
\end{document}
魔法\perm
宏有什么用?它将空格更改为普通的可打印字符(如标点符号),然后重新定义这样做。在这里,我利用了LaTeX 内核中空间设置为的\,
事实。\mathcode
"8000
无论如何你都不应该写类似的东西
\txtn{(1 2 3 4) = (2 3 4 1)}
因为你的文档的语义会被破坏。你的意思是
\txtn{(1 2 3 4)} = \txtn{(2 3 4 1)}
但即使你选择坚持,\textnormal
你也应该正确地表示排列,\newcommand{\perm}{\textnormal}
如果你愿意的话,可以这样做,并将上述内容写为
\perm{(1 2 3 4)} = \perm{(2 3 4 1)}
等号的输出是否相同并不重要;空格周围环境就会有所不同。
这是输出的图片