align* 环境中的纯文本

align* 环境中的纯文本

我有一个包含两行的对齐环境,并且在这两行之间,我想在它自己的行上包含一些纯文本,并且它应该在该行居中。

\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)}

等号的输出是否相同并不重要;空格周围环境就会有所不同。

这是输出的图片

在此处输入图片描述

相关内容