이 기사는 내 이전 게시물의 후속 기사입니다.테이블 형식 또는 병렬 패키지 내부에 수직선 그리기(및 2개 이상의 열을 갖도록 평행하게 확장하는 방법).
그래도 가질 수 없을 것 같다.
- 오른쪽 열의 가운데 맞춤 텍스트
- 오른쪽 열의 동일한 "항목" 안에 여러 텍스트 줄
문제는 다음 코드 비트로 표현됩니다.
\documentclass{article}
\newlength\svparskip
\newlength\delfix
\delfix1.3pt
\newlength\colwidth
\setlength\colwidth{\dimexpr.5\textwidth-2\tabcolsep}
\newlength\splitcolwidth
\setlength\splitcolwidth{\dimexpr.25\textwidth-2\tabcolsep}
\newenvironment{partabular}
{\par\svparskip=\parskip\relax\vspace{\delfix}}
{\vspace{\delfix}\parskip=\svparskip\relax}
\newenvironment{nextentry}
{\parskip-\delfix\par\noindent\begin{tabular*}{\textwidth}[t]
{|p{\colwidth}|p{\colwidth}|}\hline}{\hline\end{tabular*}\par}
\def\filllines#1{\vspace{\dimexpr#1\ht\strutbox+#1\dp\strutbox}}
\begin{document}
\begin{partabular}
\begin{nextentry}
\centering{\textbf{$(A)$ some text i can center}} & {\centering{\textbf{$(B)$ some text i can't center}}} \\\hline
$(C)$ some text here and then enter \\ and have some more text below \\ which is possible & $(D)$ \textbf{some text here but then enter} \\ \textbf{and have some more text below} \\ \textbf{isn't possible + the vertical lines on the right get distorted ...} \\
\end{nextentry}
\begin{nextentry}
$(E)$ & $(F)$ \\\hline
\begin{tabular}[t]{@{}p{\splitcolwidth}|p{\splitcolwidth}@{}}
$(H)_1$ \filllines{6}& $(H)_2$
\end{tabular}
& \vspace{1cm} Thanks for any help in advance! :) \\
\end{nextentry}
\end{partabular}
\end{document}
답변1
한 열의 수직을 수동으로 확장하고 있으므로 다른 열의 프로세스를 자동화하는 방법을 잘 모르겠습니다. 그러나 수동 개입이 가능하다면 빈 줄을 수동으로 삽입하여 원하는 수직 레이아웃을 얻을 수 있어야 합니다 \filllines{}
.
셀 B, D, F 및 오른쪽 아래 셀에서 수평 중심을 달성하도록 편집되었습니다. \centering
효력이 발생 하려면 반드시 \par
효력이 발생해야 합니다. 이는 마지막 두 가지 경우에서 수행할 수 있지만 셀 "B"와 "F"는 단일 행이므로 원치 않는 빈 행이 생성되지 않도록 으로 {\centering...\par}
이를 달성해야 했습니다 .\hfil...\hfill
\par
셀 "D"를 세로 중앙에 배치하는 방법에 대한 OP의 의견에 대답하기 위한 핵심은 셀 "C"를 단일 셀로 만드는 반면 OP의 MWE는 셀 "C"를 두 개의 고유 셀로 구성하는 것입니다.
\documentclass{article}
\newlength\svparskip
\newlength\delfix
\delfix1.3pt
\newlength\colwidth
\setlength\colwidth{\dimexpr.5\textwidth-2\tabcolsep}
\newlength\splitcolwidth
\setlength\splitcolwidth{\dimexpr.25\textwidth-2\tabcolsep}
\newenvironment{partabular}
{\par\svparskip=\parskip\relax\vspace{\delfix}}
{\vspace{\delfix}\parskip=\svparskip\relax}
\newenvironment{nextentry}
{\parskip-\delfix\par\noindent\begin{tabular*}{\textwidth}[t]
{|p{\colwidth}|p{\colwidth}|}\hline}{\hline\end{tabular*}\par}
\def\filllines#1{\vspace{\dimexpr#1\ht\strutbox+#1\dp\strutbox}}
\begin{document}
\begin{partabular}
\begin{nextentry}
\centering{\textbf{$(A)$ some text i can center}}
& \hfil\bfseries$(B)$ some text i can't center\hfill\\ \hline
$(C)$ some text here and then enter and have some more text below which is possible\bfseries\par\bigskip
and have some more text below
isn't possible + the vertical lines on the right get distorted ...
& \filllines{2.5}{\centering$(D)$ \bfseries text here but then enter\par}
\filllines{2} \\
\end{nextentry}
\begin{nextentry}
$(E)$ & \hfil$(F)$\hfill \\\hline
\begin{tabular}[t]{@{}p{\splitcolwidth}|p{\splitcolwidth}@{}}
$(H)_1$ \filllines{6}& $(H)_2$
\end{tabular}
& \filllines{2.5} {\centering Thanks for any help in advance! :)\par} \\
\end{nextentry}
\end{partabular}
\end{document}