MathJax

mathjax에서 nested cases 문법 중괄호 크기 줄이기

공시탈출넘버원 2024. 7. 31. 22:12

latex에는 \cascade 등 여러 문법이 있어서 깔끔하다.

https://tex.stackexchange.com/questions/615046/nested-right-cases

\smash[t]를 써도 된다.

https://tex.stackexchange.com/questions/541612/aligning-nested-cases-vertically

그런데 mathjax는 기본적인 것만 지원하므로, 저렇게 만들기가 어렵다.

 

표 안에 표를 넣는 방식도 가능하나, 그렇게되면 가장 큰 중괄호가 최상단~최하단까지 걸리는 형식으로 나온다.

https://tex.stackexchange.com/questions/84035/how-to-align-nested-cases


그래서 예쁘게 만들고 싶다면 표 문법( \begin{TABLE} 내용 \END{TABLE} )을 여러개 잘 겹쳐야 한다.

아래는 적절한 예시이다.

\[
\begin{array}{l} 

\begin{matrix} 
\phantom{클11} \\ 
\phantom{클21} \\
A \left\{ \begin{array}{l} B \\  \\ C \end{array} \right. & 
\\ \end{matrix}

& \kern -20pt
\begin{matrix}
\phantom{클12} \\ 

\left\{ \begin{array}{l} D \\  \\ E \end{array} \right. & 
\\ 
\phantom{클52} \\
\end{matrix}

& \kern -20pt
\begin{matrix} 
\left\{ \begin{array}{l} E \\ F \\ G \end{array} \right. & 
\\ \phantom{클43} \\ \phantom{클53} \\ 
\end{matrix}

\end{array}
\]

 

 

제작 핵심 순서.

  1. 1*n 형태(row-vector)로 설정할 최외각_표 하나를 먼저 만든다.
  2. n*1세로 형태(col-vector)로 설정한 내용_표를 여러개 만들어 그안에 순서대로 넣는다.
    이때, 최외각_표와 내용_표가 문법이 꼬이지 않도록 주의한다.
  3. 각각의 내용_표을 먼저 완성한다. 공백으로 둘 내용은 일단 적당한 문자열을 넣어둔다.
  4. 내용_표를 잘 조정하여 원하는 세로 배열을 맞춘다.
  5. 내용_표에 공백으로 둘 내용에 \phantom{안보이게 처리} 커맨드를 쓴다.
  6. 가로 조정은 row-vector에서 & \kern ±00pt 세부_표 형태처럼 \kern 문법을 사용한다.
    숫자 바꿔가면서 적당히 위치를 조정한다.

mathjax로 cascade 효과가 나도록 만드는 도식