表格行间距

表格行间距

我使用 TeXstudio 在 LaTex 中创建了一个表格,但无法正确地水平排列最后一列中的内容。

\documentclass[12pt,a5paper,onecolumn]{book}
\usepackage{fontspec}
\usepackage{array}
\usepackage{setspace} 
\usepackage[width=5.25in, height=8.00in, left=0.50in, right=0.50in, top=0.25in, bottom=0.25in]{geometry}
\begin{document}
\begin{tabular}{ | m{2cm} | m{1.491cm} | c | c | m{1.4cm} | }
\hline
& \centering{Front} & Near-front & Central & \hspace{1.25ex}Back\\
\hline
\centering Close & \centering 〈ii〉 [i]&  &  &\\[5mm]
\hline
\centering Near-close &  & \centering 〈e〉 [ɪ] &  & \\[5mm]
\hline
\centering Mid & \centering 〈a〉 [e̞] &  &  & 〈y〉 [o̞]\\[5mm]
\hline
\centering Open-mid & \centering 〈i〉 [ɛ] & & 〈o〉 [ɞ] &\\[5mm]
\hline
\centering Open & \centering 〈ee | u〉 [ɶ] & & \centering 〈ȧ〉 [ä] &\\[10mm]
\hline
\end{tabular}
\end{document}

1

如您所见,“Back”列给我带来了问题。没有了,单词\hspace{1.25ex}就不再居中,并且应用于\centering单词会返回错误。

另外,尽管我m{1.4cm}在最后一列进行了中间对齐,但它似乎完全忽略了它。

我不确定自中间对齐以来我做错了什么,并且\centering在其他列中也进行了工作。

答案1

我提出了两种基于makecell包的变体(美学上略有不同),允许在单元格中换行并在表格中使用粗水平线,cellspace以具有更大的单元格垂直高度,同时保持其内容的垂直居中(使用\arraystretch无法做到这一点)并且tabularx最后 4 个单元格的宽度相等。

几何包发出了警告,因此我简化了选项(宽度和高度与边距不兼容)。

\documentclass[12pt,a5paper,onecolumn]{book}

\usepackage{fontspec}
\setmainfont{Charis SIL}

\usepackage{hhline}
\usepackage{array}
\usepackage{tabularx}
\renewcommand{\tabularxcolumn}[1]{>{\centering\arraybackslash}m{#1}}
\usepackage{makecell}
\usepackage{cellspace}
\addparagraphcolumntypes{X}
\setlength\cellspacetoplimit{10pt}
\setlength\cellspacebottomlimit{10pt}
\def\thickvrule{\vrule width1pt}

\usepackage{setspace}

\usepackage[hmargin=0.50in, vmargin=0.25in]{geometry}%width=5.25in, height=8.00in,

\begin{document}

{\centering
\begin{tabularx}{\textwidth}{!{\thickvrule}Sl!{\thickvrule}*{3}{X|}X!{\thickvrule}}%{ | *{5}{S{m{2cm}}|} }%Sc
\Xcline{2-5}{1pt}
\multicolumn{1}{Sl!{\thickvrule}}{\strut} & Front & Near-front & Central & Back \\
\Xhline{1pt}
 Close & 〈ii〉 [i]& & &\\
\hline
 Near-close & & 〈e〉 [ɪ] & & \\
\hline
 Mid & 〈a〉 [e̞] & & & 〈y〉 [o̞]\\
\hline
Open-mid & 〈i〉 [ɛ] & & 〈o〉 [ɞ] &\\
\hline
 Open & \makecell{ 〈ee | u〉 \cr [ɶ]} & & 〈ȧ〉 [ä] &\\
\Xhline{1pt}
\end{tabularx}\\[1cm]

\begin{tabularx}{\textwidth}{Sl!{\thickvrule}*{3}{X|}X!{\thickvrule}}%
\multicolumn{1}{l}{} &\multicolumn{1}{c}{ Front} & \multicolumn{1}{c}{Near-front} & \multicolumn{1}{c}{Central }& \multicolumn{1}{c}{Back} \\[3pt]
\Xcline{2-5}{1pt}
 Close & 〈ii〉 [i]& & &\\
\cline{2-5}
 Near-close & & 〈e〉 [ɪ] & & \\
\cline{2-5}
 Mid & 〈a〉 [e̞] & & & 〈y〉 [o̞]\\
\cline{2-5}
Open-mid & 〈i〉 [ɛ] & & 〈o〉 [ɞ] &\\
\cline{2-5}
 Open &\makecell{〈ee | u〉 \cr [ɶ]} & & 〈ȧ〉 [ä] &\\[-1pt]
\Xcline{2-5}{1pt}
\end{tabularx}}

\end{document} 

在此处输入图片描述

答案2

使用新的列定义使单元格居中:

\documentclass[12pt,a5paper,onecolumn]{book}
\usepackage{fontspec}
\usepackage{array}
\usepackage{ragged2e}
\newcolumntype{M}[1]{>{\Centering}m{#1}}
\usepackage{setspace} 
\usepackage[width=5.25in, height=8.00in, left=0.50in, right=0.50in, top=0.25in, bottom=0.25in]{geometry}
\begin{document}
\begin{tabular}{ | M{2cm} | M{1.491cm} | c | c | M{1.4cm} | @{}M{0pt} @{}}
\hline
& Front & Near-front & Central & Back\\
\hline
Close &  〈ii〉 [i]&  &  &\\[5mm]
\hline
Near-close &  &  〈e〉 [ɪ] &  & \\[5mm]
\hline
Mid & 〈a〉 [e̞] &  &  & 〈y〉 [o̞]\\[5mm]
\hline
Open-mid &  〈i〉 [ɛ] & & 〈o〉 [ɞ] &\\[5mm]
\hline
Open &  〈ee | u〉 [ɶ] & & 〈ȧ〉 [ä] &\\[10mm]
\hline
\end{tabular}
\end{document}

在此处输入图片描述

相关内容