如何将表格中线的宽度更改为\toprule
默认的 0.25em?
我知道它会是类似的内容,\renewcommand{\toprule}{??}
但是参数括号中会是什么呢?
\toprule[0.25ex]
或者简单地使用每个表是否更容易?
答案1
我假设如果你想改变 的宽度\toprule
,你也想改变 的宽度\bottomrule
。如果是这样,只需发出指令
\setlength\heavyrulewidth{0.25ex}
booktabs
在加载后的序言中。
答案2
\toprule
你应该看看内部的定义booktabs.sty
:
\def\toprule{\noalign{\ifnum0=`}\fi
\@aboverulesep=\abovetopsep
\global\@belowrulesep=\belowrulesep %global cos for use in the next noalign
\global\@thisruleclass=\@ne
\@ifnextchar[{\@BTrule}{\@BTrule[\heavyrulewidth]}}
设置一些预定义宏后,如果不指定可选参数,\toprule
则使用。因此,您可以重新定义长度(默认为;这也会影响其他规则)。更好的是,创建一个新的并使用补丁将其替换在里面:\@BTrule[\heavyrulewidth]
\heavyrulewidth
.08em
\bottomrule
\toprulewidth
\toprule
\documentclass{article}
\usepackage{booktabs,etoolbox}
\newlength{\toprulewidth}
\setlength{\toprulewidth}{0.25ex}
\patchcmd{\toprule}% <cmd>
{\heavyrulewidth}{\toprulewidth}% <search><replace>
{}{}% <success><failure>
\begin{document}
\begin{tabular}{ccc}
\toprule
A & B & C \\
\midrule
1 & 2 & 3 \\
\bottomrule
\end{tabular}
\end{document}