我曾经看到过关于此事的类似问题(问题 1,问题2) 添加垂直空间而不破坏垂直线,建议的解决方案是在\\
使用后添加空间\\[0.1cm]
,例如或更改\arraystretch
我不想做的。使用\\[0.1cm]
允许我在之前添加空格,\hline
但不能在之后添加空格。
如何在\hline
不破坏表格中的垂直线的情况下在后面添加垂直空间?
我的 MWE 如下:
\documentclass{scrreprt}
\usepackage{setspace}
\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry}
\usepackage{array,tabularx}
\doublespacing
\begin{document}
\begin{table}[htb]
\centering
\onehalfspacing
\caption{Table of info.}
\begin{tabular}{c | c c}
& C/S Analyser & O/N/H Analyser \\
& EMIA 320 V2 & EMGA 830 \\[0.1cm]
\hline
\noalign{\vskip 0.1cm}
Sensitivity (ppm) & 0.1 & 0.001 \\
Furnace type & Induction & Impulse \\
Carrier gas & Pure O2 & Pure He \\[0.1cm]
\hline
\end{tabular}
\doublespacing
\label{tab:chem}
\end{table}
\end{document}
答案1
您可以使用cellspace
包来做到这一点:定义行的最小垂直填充,并在相关的列说明符前加上字母S
(或者C
如果您使用siunitx
):
\documentclass{scrreprt}
\usepackage{setspace}
\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry}
\usepackage{array,tabularx}
\doublespacing
\usepackage{cellspace}
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{5pt}
\begin{document}
\begin{table}[htb]
\centering
\onehalfspacing
\caption{Table of info.}
\begin{tabular}{c | Sc c}
\hline
& C/S Analyser & O/N/H Analyser \\
& EMIA 320 V2 & EMGA 830 \\
\hline
Sensitivity (ppm) & 0.1 & 0.001 \\
Furnace type & Induction & Impulse \\
Carrier gas & Pure O2 & Pure He \\
\hline
\end{tabular}
\doublespacing
\label{tab:chem}
\end{table}
\end{document}
答案2
添加\\\\[-1.5\medskipamount]
后将\hline
生成另一行高度较小的行。
应适当选择 medskipamout 之前的值。
答案3
我建议你完全放弃垂直线。像这样怎么样?
\documentclass{scrreprt}
\usepackage{setspace}
\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry}
\usepackage{array,tabularx,booktabs}
\doublespacing
\begin{document}
\begin{table}[htb]
\centering
\onehalfspacing
\caption{Table of info.}
\begin{tabular}{@{}ccc@{}}
\toprule
Parameter & C/S Analyser & O/N/H Analyser \\
& EMIA 320 V2 & EMGA 830 \\%
\cmidrule(r){1-1}\cmidrule(lr){2-2}\cmidrule(l){3-3}
Sensitivity (ppm) & 0.1 & 0.001 \\
Furnace type & Induction & Impulse \\
Carrier gas & Pure O2 & Pure He \\[0.1cm]
\bottomrule
\end{tabular}
\doublespacing
\label{tab:chem}
\end{table}
\end{document}
答案4
使用 时{NiceTabular}
,nicematrix
垂直规则永远不会被破坏,即使是\noalign{\vskip ...}
(因为它们实际上是在构建数组后由 PGF/Tikz 绘制的)。
\documentclass{scrreprt}
\usepackage{setspace}
\usepackage[left=2.5cm,right=2.5cm,top=3cm,bottom=3cm]{geometry}
\usepackage{nicematrix}
\doublespacing
\begin{document}
\begin{table}[htb]
\centering
\onehalfspacing
\caption{Table of info.}
\begin{NiceTabular}{c|cc}
& C/S Analyser & O/N/H Analyser \\
& EMIA 320 V2 & EMGA 830 \\[0.1cm]
\hline
\noalign{\vskip 0.1cm}
Sensitivity (ppm) & 0.1 & 0.001 \\
Furnace type & Induction & Impulse \\
Carrier gas & Pure O2 & Pure He \\[0.1cm]
\hline
\end{NiceTabular}
\doublespacing
\label{tab:chem}
\end{table}
\end{document}
不过,我建议使用 来制作表格booktabs
(并本着 的精神booktabs
)。