我在Overleaf上有以下示例代码来生成一个表格。
\documentclass[hidelinks,a4paper,12pt,oneside]{article}
\usepackage[utf8]{inputenc}
\usepackage[margin=1in]{geometry}
\usepackage{multicol}
\usepackage{multirow}
\usepackage{array}
\newcolumntype{P}[1]{>{\centering\arraybackslash}p{#1}}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
\usepackage{stackengine}
\newcommand\xrowht[2][0]{\addstackgap[0.5\dimexpr#2\relax]{\vphantom{#1}}}
\title{table}
\begin{document}
\maketitle
\begin{table}[ht]
\footnotesize
\centering
\begin{tabular}{|P{0.75cm}|P{1.25cm}|P{0.75cm}|P{0.75cm}|P{0.75cm}|P{0.75cm}|P{0.75cm}|P{1cm}|P{1cm}|P{1cm}|P{1cm}|P{0.75cm}|}
\hline\xrowht[()]{15pt}
\multirow{2}{*}{Test} & \multirow{2}{*}{Name} & \multicolumn{3}{c|}{Domain} & \multirow{2}{*}{Cell} & \multicolumn{4}{c|}{MLR} & \multirow{2}{*}{$C_1$} & \multirow{2}{*}{$C_2$}\\
\cline{3-5}\cline{7-10}\xrowht[()]{15pt}
No & & x & y & z & Size & $\dot{m_t}$ & $\dot{m}_{in}$ & $\dot{m}_{out}$ & $\dot{m}_{avg}$ & & \\
\hline\xrowht[()]{15pt}
1 & Mass1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 \\
\hline\xrowht[()]{15pt}
2 & Mass2 & 0.1 & 0.1 & 0.1 & 0.1 & 0.1 & \multicolumn{2}{c|}{0.1} & 0.1 & 0.1 & 0.1 \\
\hline
\end{tabular}
\vspace{0.5cm}
\caption{Tests}
\end{table}
\end{document}
这给了我:
问题:我无法使表格中的文本垂直居中或位于其他任何位置。例如,“Test No”、“Name”、“Cell Size”、“C1”和“C2”应该是垂直居中对齐的。此外,我发现使用\hline\xrowht[()]{15pt}
会给我不同的盒子宽度,请参见“Domain”和“MLR”框。请问有人可以帮助我正确设置这个表格吗?
感谢大家
\arraystretch
的问题 :-( 值得一提的是:https://tex.stackexchange.com/a/166370/32813 - escalator