LaTeX 表格:如何使水平线变粗或变细(通常为 \hline)?

LaTeX 表格:如何使水平线变粗或变细(通常为 \hline)?

标题说明了一切:

在 LaTeX 表格中:如何制作粗体水平线(通常\hline)?

答案1

您的问题表明您可能有兴趣设置\hline不同粗细的表格规则,以改善排版,而不是进行一些简单的“一次性”调整。如果是这样,您应该考虑书签包(如果您还没有这样做)。它提供了固定的加权规则(\toprule\midrule等),出于排版原因,这些规则以 的分数em而不是pt的分数来定义,尽管这些规则也很容易在 中定义pt。每个规则都可以在本地或全局进行参数化,以满足您自己的特定权重要求。该包还提供了宏,例如\heavyrulewidth\lightrulewidth,您可以“按原样”使用它们,也可以重新定义以满足您的特定需求。(正如作者使用术语“规则”而其他人可能称之为“线”一样,作者还使用术语“宽度”而其他人可能更喜欢使用“厚度”。)该包非常易于使用。作为附带好处,文档包含一些关于良好表格排版的来龙去脉的非常有见地的指南。

答案2

\usepackage{makecell}

并使用例如

\Xhline{2\arrayrulewidth}

代替\hline

答案3

您还可以修复默认的 tickness\hline或使用\specialrule来自booktabsctable包的命令。(由于ctable包导入了booktabs包,因此来自此包的所有命令也可用)。这是 MWE:

平均能量损失

\documentclass{article}
\usepackage{ctable} % for \specialrule command

\begin{document}
\centering

Default \texttt{\textbackslash hline}: 
\begin{tabular}{ccc}
\hline
1 & 2 & 3 \\ 
\hline
\end{tabular}
\bigskip

Thicker \texttt{\textbackslash hline}: 
\setlength{\arrayrulewidth}{.3em}
\bigskip
\begin{tabular}{ccc}
\hline
1 & 2 & 3 \\ 
\hline
\end{tabular}
\bigskip

Custom \texttt{special rule}s with  \texttt{ctable} package: 

\begin{tabular}{ccc}
\specialrule{.05em}{1em}{0em} 
 1 & 2 & 3 \\ 
\specialrule{.1em}{.05em}{.05em} 
1 & 2 & 3 \\ 
\specialrule{.2em}{.1em}{.1em} 
1 & 2 & 3 \\ 
\specialrule{.3em}{.2em}{.2em}
 1 & 2 & 3 \\
\specialrule{.4em}{.3em}{.3em}
1 & 2 & 3 \\    
\specialrule{.5em}{.4em}{.4em}
1 & 2 & 3 \\
\specialrule{.6em}{.5em}{0em}
\end{tabular}
\end{document}

答案4

我建议你使用\specialrule命令booktabs包,但应该阅读手册中的相关段落。这样厚重的规则通常不受欢迎(尤其是在科学文本中)。

例如:

\documentclass{article}
\usepackage{booktabs}

\begin{document}
\begin{table}
    \centering
    \begin{tabular}{rccc}
        \toprule
        Thing & Value & Value & Value\\
        \midrule
        A & 1 & 2 & 3\\
        B & 1 & 2 & 3\\
        C & 1 & 2 & 3\\
        \specialrule{2.5pt}{1pt}{1pt}
        D & 1 & 2 & 3\\
        E & 1 & 2 & 3\\
        \bottomrule
    \end{tabular}
\end{table}
\end{document}

相关内容