longtable 中的 Xhline 太长

longtable 中的 Xhline 太长

我正在尝试制作带有 的表格longtable。我会定期\hline用替换makecell标准\Xhline{2\arrayrulewidth}。这通常发生在\multicolumn单元格下方。

\documentclass[a4paper,10pt]{article}
\usepackage{longtable}
\usepackage{makecell}
\begin{document}
    \begin{longtable}{|l|l|l|}
    \hline
    \multicolumn{3}{|c|}{Big header} \\
    \Xhline{2\arrayrulewidth}
    Some stuff & More stuff & Stuff without lipsums \\
    \hline
    \end{longtable}
\end{document}

在上面的 MWE 中,就像在我的实际文档中一样,\Xhline将换行到,而不是表格的宽度。这会导致这种不方便的丑陋结果:

Xhline 太大

问题:

  • 什么原因造成这个奇怪的结果?
  • 我该如何避免这种情况(即\Xhline在表格边框处停止)?

答案1

解决方法是使用Xcline

另一个解决方案使用 boldline来自shipunovbundle 的包:其\hlineB命令考虑了 longtable。请注意,此命令的参数只是一个数字(的multiple\arrayrulewidth,而不是长度\Xhline。此外,boldline对于较粗的垂直线,具有简单的语法。

\documentclass[a4paper,10pt]{article}
\usepackage{longtable}
\usepackage{makecell, boldline}

\begin{document}

\setlength\extrarowheight{3pt}
    \begin{longtable}{|l|l|l|}
    \hline
    \multicolumn{3}{|c|}{Big header} \\
    \Xcline{1-3}{2\arrayrulewidth}
    Some stuff & More stuff & Stuff without lipsums \\
    \hline
    \end{longtable}

    \begin{longtable}{|l|l|l|}
    \hline
    \multicolumn{3}{|c|}{Big header} \\
    \hlineB{2}
    Some stuff & More stuff & Stuff without lipsa \\
    \hline
    \end{longtable}

\end{document} 

在此处输入图片描述

相关内容