표의 일반 TeX 단락

표의 일반 TeX 단락

소량의 정보를 열에 배치하고 싶습니다. 문제는 정보에 단락이 포함되어 있다는 것입니다. 기본적으로 이것이 내가 원하는 것입니다:

Column 1 Line 1   Column 2 Line 1   Column 3 Line 1
Column 1 Line 2   Column 2 Line 2   Column 3 Line 2
                  Column 2 Line 3

문제는 세 열 모두 서로 다른 글꼴 크기를 사용하므로 각 줄을 일반적인 행으로 배치하는 것만으로는 \halign작동하지 않는다는 것입니다. 현재 시도는 다음과 같습니다.

\def\Center#1{\hfil #1 \hfil}
\def\UseFont#1#2{\global\font\currentFont=#1 at #2 \currentFont}
\halign{
    # & # & # \cr
    \Center{Column 1 Line 1}\break\par %neither works
    \Center{Column 1 Line 2}
    &
    \UseFont{cmb10}{18pt}
    \Center{Column 2 Line 1}\break\par
    \Center{Column 2 Line 2}\break\par
    \Center{Column 2 Line 3}\break\par
    &
    \Center{Column 3 Line 1}\break\par
    \Center{Column 3 Line 2}
    \cr
}

해당 코드의 문제점은 개행 문자가 전송되지 않는다는 것입니다. 문제는 제한된 수평 모드에 갇혀 있다는 것입니다. 왜냐하면 \halign각 열을 vbox의 너비에 던지면 \vbox너무 넓어서 다른 열이 표시되지 않기 때문입니다.

이를 구현하려면 어떻게 해야 합니까?

답변1

여기에 이미지 설명을 입력하세요

\long\def\Center#1{\rightskip0pt plus 1fill \leftskip\rightskip \parindent0pt \parfillskip0pt\relax
  #1\par}
\def\UseFont#1#2{\global\font\currentFont=#1 at #2 \currentFont}
\halign{
    \vbox{\hsize3cm#\par} & \vbox{\hsize3cm#\par} & \vbox{\hsize3cm#\par} \cr
    \Center{Column 1 Line 1\par %neither works
    Column 1 Line 2}
    &
    \UseFont{cmb10}{18pt}
    \Center{Column 2 Line 1\par
    Column 2 Line 2\par
    Column 2 Line 3}
    &
    \Center{Column 3 Line 1\par
    Column 3 Line 2}
    \cr
}

\end

관련 정보