이것은 매우 간단한 일이고 작동해야 하는데 왜 그렇지 않은지 이해가 되지 않습니다. 세 개의 열과 두 개의 행이 있는 간단한 테이블이 있습니다. 첫 번째 행의 각 셀에 있는 텍스트를 세로 중앙에 배치하고 싶었습니다. 센터를 해준다첫 번째와 두 번째 열에서는 세로로 표시되지만 세 번째 열에서는 텍스트가 맨 위에 남아 있습니다. 내 출처는 다음과 같습니다.
\documentclass[12pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{array}
\title{}
\author{}
\pagestyle{empty}
\date{}
\begin{document}
\setlength\extrarowheight{2pt}
\begin{tabular}{|m{1cm}|m{4in}|m{3cm}|}
\hline
\textbf{No.} & \textbf{Particulars} & \textbf{Amount}\\[8pt]
\hline
1. & Blah blah blah & 2,000.00\\[8pt]
\hline
\end{tabular}
\end{document}
너무 간단한 일이라 여기에 질문을 하게 되어 미안할 정도입니다. 하지만 만족스럽지 못한 결과를 얻었고 무엇이 잘못되었는지 알아낼 수 없는 것 같습니다.
답변1
행에 수직 공간을 수동으로 추가하는 대신 cellspace
. 필요에 맞게 간격을 조정할 수 있으며, 내용은 세로 중앙에 배치됩니다.
개인적으로 저는 좀 더 개방적인 느낌(세로선이 없고 가로선이 적은)의 테이블을 선호해서 예시 booktabs
도 추가했습니다. 마지막으로 siunitx
패키지를 사용하여 표 셀의 숫자 정렬을 도울 수도 있습니다 . 두 번째 열에 꽤 많은 텍스트가 포함되어 있는 경우 tabularx
두 번째 열에서 자동 줄 바꿈을 허용하면서 테이블을 텍스트 너비만큼 넓게 만들기 위해 갈 것입니다 . 이에 대한 예도 포함시켰습니다.
마지막으로 행에 수동으로 번호를 매기는 것이 지겹다면 다음을 살펴보세요.자동 테이블 행 번호
\documentclass[12pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{array}
\usepackage[column=0]{cellspace}
\setlength\cellspacetoplimit{6pt}
\setlength\cellspacebottomlimit{\cellspacetoplimit}
\usepackage{booktabs}
\usepackage{siunitx}
\sisetup{input-ignore={,},input-decimal-markers={.}}
\usepackage{tabularx}
\begin{document}
With cellspace:
\begin{tabular}{|0{m{1cm}}|0{m{4in}}|0{m{3cm}}|}
\hline
\textbf{No.} & \textbf{Particulars} & \textbf{Amount}\\
\hline
1. & Blah blah blah & 2,000.00\\
\hline
2. & Blah blah blah & 2,000.00\\
\hline
\end{tabular}
\bigskip
With booktabs:
\begin{tabular}{m{1cm}m{4in}m{3cm}}
\toprule
\textbf{No.} & \textbf{Particulars} & \textbf{Amount}\\
\midrule
1. & Blah blah blah & 2,000.00\\
2. & Blah blah blah & 2,000.00\\
\bottomrule
\end{tabular}
\bigskip
With booktabs, siunitx and tabularx:
\begin{tabularx}{\textwidth}{lXS[table-format=4.2]}
\toprule
{No.} & {Particulars} & {Amount}\\
\midrule
1. & Blah blah blah & 2,000.00\\
2. & Blah blah blah & 2,000.00\\
\bottomrule
\end{tabularx}
\end{document}
답변2
각 행에 플러스를 \arraystretch
추가하는 대신 다음을 변경하세요 .\extrarowheight
[8pt]
\documentclass[12pt]{article}
\usepackage[margin=2cm]{geometry}
\usepackage{array}
\begin{document}
\renewcommand\arraystretch{1.6}
\begin{tabular}{|m{1cm}|m{4in}|m{3cm}|}\hline
\textbf{No.} & \textbf{Particulars} & \textbf{Amount}\\\hline
1. & Blah blah blah & 2,000.00\\\hline
\end{tabular}
\end{document}
(... 물론 감옥에 갇힌 테이블 대신 booktabs
!을 사용하세요.)