我有一张包含多列的表格。使用\multicolumn
一次后,一切正常。
但是,当使用\multicolumn
两次且具有不同的列col
值时,文本不会占据所有可用宽度。
请参阅下面的代码:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{xltabular}
\title{xltabular}
\author{stephan.hug }
\date{January 2023}
\begin{document}
\maketitle
\section{Introduction}
\begin{xltabular}{\linewidth}{|l|l|l|l|c|l|}
1 & 2 & 3 & 4 & 5 & 6 \\
\hline
% Comment/uncomment the line below to observer strange behaviour regarding the filling of all the available horizontal space
\multicolumn{3}{|X|}{foo bar} & Lead & & \\
\hline
1 & \multicolumn{4}{|X|}{\textbf{a asdf asdf asdf asdf asdf asdf asdf asdf asdf asdf asdf asdf asdf )}
} & 6 \\
\end{xltabular}
\end{document}
我还附加了显示该行为的屏幕截图:
答案1
longtblr
这tabularray
可能是一个解决方案。您需要添加hspan=minimum
列规范才能X
工作
\documentclass{article}
\usepackage{tabularray}
\usepackage[nopar]{kantlipsum}
\title{xltabular}
\author{stephan.hug }
\date{January 2023}
\begin{document}
\maketitle
\section{Introduction}
\begin{longtblr}[
caption = {The caption},
]{
colspec = {*2{Q[l]} X Q[l] Q[c] Q[l]},
hspan = minimal,
vlines, hlines,
}
1 & 2 & 3 & 4 & 5 & 6 \\
\SetCell[c=3]{}foo bar & & & Lead & & \\
1 & \SetCell[c=4]{halign=j,font=\bfseries} \kant[1][1] & & & & 6 \\
\end{longtblr}
\end{document}
如果您更喜欢使用左对齐,请考虑在行中添加\RaggedRight
(来自包)ragged2e
1 & \SetCell[c=4]{font=\bfseries} \RaggedRight\kant[1][1] & & & & 6 \\
这将改善排版。