表头加斜线在LaTeX排版里面是比较常见的,我们一般遇到的都是单独的一格,或者合并多列/多行,然后加斜线。但是同时合并行与列之后,加斜线做出来的效果就比较迷了,需要进行微调。
以最近做的一个表格为例:
首先是用了diagbox之后出来的效果,可以看到斜线溢出,而且长度也不够,本来应该延伸是到第二栏的。这个表格的特殊之处在于,合并了两行和两列,这种情况下出现溢出就要进行微调。
diagbox里面有很多参数可以进行微调,这个表格调整选的是高度和内间距。
首先调整高度,我们用height,增加一点高度,效果如下:
可以看到斜线不溢出了,但是字母和斜线重叠了,而且长度依旧没有到第二栏。因为右边我们内容是空白,我们可以给他增加一点内间距,这样的话表格斜线就会跟着变长。调整完的效果如下图所示:
这样就和原来画的表格效果一致啦。
diagbox调整的可选参数比较多,这里只是选取了其中两个,应该不止这一种方法,在遇到不同的表格时,参数计算的取值也是不一样的,可以按需进行调整。
附代码:
\begin{table}\centering\resizebox{\textwidth}{!}{\begin{tabular}{ccccc}\hline\multicolumn{2}{l}{\multirow{2}{*}{\diagbox[height=27.5pt,innerrightsep=170pt]{\makecell[l]{nature\\ communication}}{}}} & \multicolumn{2}{c}{nature communication} & \multirow{2}{*}{ABCD} \\ & & abcdefgh abcdef & ABCD & \\\hline \multirow{3}{*}{abcdef abcdef} & abcdefghi abcdefghi & 12 & 12 & 12 \\ & abcdefg abcdefghi & 12 & 12 & 12 \\ & abcde abcdefghi & 12 & 12 & 12 \\ \multirow{2}{*}{abcdefgh} & abcdef abcdef & 12 & 12 & 12 \\ & abcdef abcdef abcdef & 12 & 12 & 12 \\ \multirow{2}{*}{abcdef abcdefghdig } & abcdefg abcdef abcdef ghi & 12 & 12 & 12 \\ & abcdefg abcdefabcdefabcdef abcdef & 12 & 12 & 12 \\ \multirow{2}{*}{abcdef abcdef } & abcdef abcdef abcdef abcdef abcdef abcdef & 12 & 12 & 12 \\ & def-abcdefghijk & 12 & 12 & 12 \\\hline\end{tabular}}\end{table}