
일부 방정식을 등호에 정렬하고 싶어서 다음과 같이 썼습니다.
\begin{align}
-3z &=-9\\
z &= 3\\
-3y-3*3 &= 3\\
y &=-4\\
2x+8*(-4)+4*3 &= 2\\
x &=11
\end{align}
그러나 한 방정식이 다른 방정식보다 훨씬 길기 때문에 모든 방정식이 페이지 오른쪽에 표시됩니다.
모든 방정식을 정렬하면서 등호를 가운데에 표시하려면 어떻게 해야 합니까?
답변1
간단한 접근 방식은가장 넓은일부 겹침을 수용하여 반대편에 입구(왼쪽 또는 오른쪽):
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\begin{document}
\lipsum[2]
\begin{align*}
-3z &= -9 \\
z &= 3 \\
-3y-3*3 &= 3 \\
y &= -4 \\
2x+8*(-4)+4*3 &= 2 \\
x &= 11
\end{align*}
\lipsum[2]
\begin{align*}
-3z &= -9 \\
z &= 3 \\
-3y-3*3 &= 3 \\
y &= -4 \\
2x+8*(-4)+4*3 &= \rlap{2}\phantom{2x+8*(-4)+4*3} \\
x &= 11
\end{align*}
\lipsum[2]
\end{document}
또는 방정식 번호 매기기에 관심이 없다면 다음 구성을 사용할 수 있습니다.
\documentclass{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\usepackage{array}% http://ctan.org/pkg/array
\newsavebox{\mymathbox}
\newcolumntype{R}{>{\begin{lrbox}{\mymathbox}$}r<{$\end{lrbox}\llap{\usebox{\mymathbox}}}}%
\newcolumntype{L}{>{\begin{lrbox}{\mymathbox}$}l<{$\end{lrbox}\rlap{\usebox{\mymathbox}}}}%
\begin{document}
\lipsum[2]
\begin{align*}
-3z &= -9 \\
z &= 3 \\
-3y-3*3 &= 3 \\
y &= -4 \\
2x+8*(-4)+4*3 &= 2 \\
x &= 11
\end{align*}
\lipsum[2]
\[
\renewcommand{\arraystretch}{1.2}
\begin{array}{R@{{}={}}L}
-3z & -9 \\
z & 3 \\
-3y-3*3 & 3 \\
y & -4 \\
2x+8*(-4)+4*3 & 2 \\
x & 11
\end{array} \]
\lipsum[2]
\end{document}
이는 align*
an 형식으로 an을 구성 array
하고 너비가 0인 상자의 등호 양쪽에 내용을 배치합니다. 결과적으로 방정식은 를 기준으로 중심이 맞춰진 것처럼 보입니다 =
.
내용을 텍스트 모드로 삽입하는 \rlap
및 를 \llap
사용합니다 . 따라서 및 열 유형 의 자동 구성을 \makebox
통해 수학 모드로 다시 전환됩니다 .$
L
R
답변2
비슷한 문제에 직면했지만 최종(더 긴) 방정식도 배치하고 싶었습니다.상자에.내가 사용한 정렬 상자의 경우\박스형Mathtools에서. 위 @Werner의 솔루션 개념을 사용하여 다음과 같은 솔루션을 찾았습니다.가운데, '=' 기준으로 정렬, 박스형 방정식, 이는 방정식의 양쪽에 다른 쪽의 텍스트를 다음과 같이 배치하는 것입니다.\환상텍스트. 이렇게 하면 상자를 복잡하게 만드는 \rlap을 사용하지 않고도 방정식이 대칭이 될 수 있습니다.
나는 이것이 원래 게시물에서 요구한 것과 정확히 일치하지 않는다는 것을 알고 있지만 중앙 정렬 개념을 논의하는 게시물이 많지 않기 때문에 이것이 매우 유용한 추가가 될 것이라고 생각합니다.
또한 간단한 방법을 추가로 포함시켰습니다.증가 \Aboxed 패딩, 온라인 어디에서도 찾을 수 없었습니다. 아이디어는 y 패딩에 하나의 0 너비 규칙을 사용하고 x 패딩에 두 개의 0 높이 규칙을 사용하는 것입니다. 오프셋은 글꼴 크기의 마이너스 절반에 배치되어야 하며 제 경우에는 12pt/2=-6pt입니다.
y 패딩은 위에 4pt를 원하고 아래에 pt를 원하기 때문에 20pt가 발생했습니다. 그러면 4pt+4pt+12pt = 20pt가 됩니다. 여기서 12pt는 글꼴 크기입니다.
내 MWE는 다음과 같습니다.
\documentclass[12pt]{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{amsmath}% http://ctan.org/pkg/amsmath
\usepackage{mathtools} % for Aboxed, to box in alignat environment
\begin{document}
\lipsum[2]
\begin{align*}
-3z &= -9 \\
z &= 3 \\
-3y-3*3 &= 3 \\
y &= -4 \\
2x+8*(-4)+4*3 &= 2 \\
x &= 11
\end{align*}
\lipsum[2]
\begin{align}
-3z &= -9\nonumber \\
z &= 3\nonumber \\
-3y-3*3 &= 3\nonumber \\
y &= -4\nonumber \\
\phantom{2\implies} \Aboxed{\rule[-6pt]{4pt}{0pt}2x+8*(-4)+4*3 &=\rule[-6pt]{0pt}{20pt}2\rule[-6pt]{4pt}{0pt}}\phantom{2x+8*(-4)+4*3 \implies}
\end{align}
\end{document}
그리고 제가 달성하고 싶었던 결과는 다음과 같습니다.