答案1
两种变体,还具有systeme
:
\documentclass{article}
\usepackage{amsmath}
\usepackage{systeme}
\begin{document}
\[ \systeme{t + x + y + z = 4, x + y = 2, z = 2}\sysdelim| . \systeme{\mbox{} @ \text{Some text}, \mbox{}@ \text{Some more text},\mbox{} @\text{A last text}} \]
\bigskip
\[ \sysdelim\{| \systeme{t + x + y + z = 4, x + y = 2, z = 2\enspace}
\enspace \begin{aligned} & \text{Some text} \\ & \text{Some more text} \\ & \text{A last text} \end{aligned}\]
\end{document}
答案2
可以使用systeme
包在右侧添加一个矩阵来解决您的问题(例如)。
%% Compile and read me!
\documentclass[a4paper,12pt]{article}
\usepackage{mathtools}
\usepackage{systeme}
\begin{document}
$\sysdelim{\{}{|}\systeme{t+x+y+z=4,x+y=2,z=2} \quad \begin{matrix} \text{my text} \\[.3em] \text{another text} \\[.3em] \text{my favorite}\end{matrix}$
\end{document}
附录:此附录来自伟大的用户@Bernard(请参阅您的回答中的评论)。如果没有他,我就不会有左对齐的文本。
\documentclass[a4paper,12pt]{article}
\usepackage{mathtools}
\usepackage{systeme}
\begin{document}
$\sysdelim{\{}{|}\systeme{t+x+y+z=4,x+y=2,z=2} \quad \begin{matrix*}[l] & \text{my text} \\[.3em] &\text{another text} \\[.3em] &\text{my favorite}\end{matrix*}$
\end{document}
答案3
对 Sebastiano 和 Bernard 的精彩答案进行了改进;它使用单个答案\systeme
,并且在每行的末尾给出文本。
这样,即使是垂直方向的大文本也能应付,参见第二个(诚然是人为的)例子。
文本排版在零宽度框中,但宽度是经过测量的,并且最大值是经过计算的。最后,我发出一个合适的\hspace
命令,在将整个块居中时处理文本。
\documentclass[a4paper,12pt]{article}
\usepackage{mathtools}
\usepackage{systeme}
\usepackage{showframe} % to show the page frame, remove it
\newlength{\stextwidth}
\newcommand{\stext}[1]{%
\settowidth{\dimen0}{\quad\,#1}%
\ifdim\dimen0>\stextwidth \global\stextwidth=\dimen0\fi
\quad\makebox[0pt][l]{\quad\,#1}%
}
\begin{document}
\begin{equation*}
\global\stextwidth=0pt
\sysdelim{\{}{|}
\systeme{
t+x+y+z=4\stext{my text},
x+y=2\stext{another text},
z=2\stext{my favorite}
}\hspace{\stextwidth}
\end{equation*}
\end{document}
第二个(人为的)例子
\documentclass[a4paper,12pt]{article}
\usepackage{mathtools}
\usepackage{systeme}
\usepackage{showframe} % for judging the centering
\newlength{\stextwidth}
\newcommand{\stext}[1]{%
\settowidth{\dimen0}{\quad\,#1}%
\ifdim\dimen0>\stextwidth \global\stextwidth=\dimen0\fi
\quad\makebox[0pt][l]{\quad\,#1}%
}
\begin{document}
\begin{equation*}
\global\stextwidth=0pt
\sysdelim{\{}{|}
\systeme{
t+x+y+z=4\stext{\parbox[t]{8em}{my text that is too long for one line\vspace{2ex}}},
x+y=2\stext{another text},
z=2\stext{my favorite}
}\hspace{\stextwidth}
\end{equation*}
\end{document}
如果需要多个这样的系统,最好定义一个宏:
\documentclass[a4paper,12pt]{article}
\usepackage{mathtools}
\usepackage{systeme}
\usepackage{showframe} % for judging the centering
\newlength{\stextwidth}
\newcommand{\stext}[1]{%
\settowidth{\dimen0}{\quad\,#1}%
\ifdim\dimen0>\stextwidth \global\stextwidth=\dimen0\fi
\quad\makebox[0pt][l]{\quad\,#1}%
}
\newcommand{\tsysteme}[1]{%
\sysdelim{\{}{|}%
\global\stextwidth=0pt
\systeme{#1}%
\hspace{\stextwidth}%
}
\begin{document}
\begin{equation*}
\tsysteme{
t+x+y+z=4\stext{my text},
x+y=2\stext{another text},
z=2\stext{my favorite}
}
\end{equation*}
\end{document}