테이블 행 사이의 공간을 늘리려고 합니다 tabularx
. 다음 코드는 잘 작동하며 원하는 작업을 수행합니다.
\begin{tabularx}{5ex}{X}
text \\[2ex]
x
\end{tabularx}
그러나 텍스트가 너무 길어서 한 줄에 맞지 않으면 세로 공간이 작동하지 않습니다.
\begin{tabularx}{5ex}{X}
text text \\[2ex]
x
\end{tabularx}
코드가 작동하도록 수정하는 방법을 알려주십시오. 사용할 변형은 (N - 1) * \baselineskip + 2ex
텍스트 줄 수에 따라 달라지므로 적합하지 않습니다 N
.
UPD전체 예:
\documentclass{article}
\usepackage{tabularx}
\begin{document}
% code above
\end{document}
답변1
와 :tabularx
cellspace
\documentclass{article}
\usepackage[column=O]{cellspace}% better, than {} aren't necessary
\setlength\cellspacetoplimit{2ex}
\setlength\cellspacebottomlimit{2ex}
\addparagraphcolumntypes{X}
\usepackage{tabularx} % "tabularx" had to be after "cellspace"
\begin{document}
\begin{tabularx}{5ex}{OX}
\hline
text text \\
\hline
x \\
\hline
\end{tabularx}
\end{document}
hline
수직 거리를 더 잘 볼 수 있도록 s가 추가되었습니다)
패키지 포함 tabularray
:
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{width=5ex,
hlines, % for better visibility of vertical distances
colspec = {X},
rowsep=2ex}
text text \\
x \\
\end{tblr}
\end{document}
결과는 이전과 같습니다.
부록:
분명히 질문은 전혀 명확하지 않습니다. 아래 설명에서 행 사이의 거리를 늘리려면 일부 행 사이에서만 필요하다는 내용이 나옵니다. 이를 수행하는 가장 간단한 방법은 다음을 사용하는 것입니다 \addlinespace[<desired space>]
.
\documentclass{article}
\usepackage{tabularx}
\usepackage{booktabs}
\begin{document}
\begin{tabularx}{5ex}{X}
text text \\
text text \\
\addlinespace[2ex] % you can omit this space, if its default value 3pt is ok
x \\
text text \\
\end{tabularx}
\end{document}
답변2
arraystretch
다음 요소에 따라 셀을 늘리는 데 사용할 수 있습니다 <F>
.
\renewcommand\arraystretch{<F>}
1.0이 기본값입니다. 효과는 비대칭이지만 작은 요소는 잘 작동합니다.
또한 arraystretch
셀 내용 앞뒤에 보이지 않는 요소(예: 텍스트 한 줄보다 큰 높이와 깊이의 길이가 0인 수직 막대)를 삽입하고 추가할 수도 있습니다. 막대를 사용하면 셀이 해당 내용에 적응하게 되고 공간이 늘어나는 효과를 얻게 됩니다.
이는 열 정의 시 자동화될 수 있습니다. 특정 행에서 효과를 취소하거나 변경해야 하는 경우에는 \multicolumn
변경된 설정으로 사용하세요.
\documentclass{article}
\usepackage{tabularx}
\newcommand\upstrut[1][2ex]{\rule[1.5ex]{0pt}{#1}}
\newcommand\lostrut[1][2ex]{\rule[-#1]{0pt}{#1}}
\begin{document}
\begin{tabularx}{9ex}{>{\upstrut}X<{\lostrut}}
\hline
\multicolumn{1}{l}{\textbf{head}} \\
\hline
\multicolumn{1}{l<{\lostrut[4ex]}}{x} \\
text text \\
text text \\
text text \\
\multicolumn{1}{>{\upstrut[4ex]}l}{x} \\
\hline
\end{tabularx}
\end{document}
편집하다. 그러나 다음과 같이자르코님의 답변에 따르면 다음을 사용하여 작업을 단순화할 수 있습니다 tabularray
.
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{
width = 9ex,
colspec = {X},
hline{1-2,Z},
row{3-Y} = {rowsep=2ex},
}
\textbf{head} \\
x \\
text text \\
text text \\
text text \\
x \\
\end{tblr}
\end{document}