當我發現時,我說「哇,這真是一個奇蹟!」:一個結合了andxltabular
的包,其中可以給出單元寬度和全局寬度的比率,並且所有計算都是自動完成的,夢想成為現實!它工作得很好,除了一件事:它似乎與.tabularx
longtable
multirow
這是一個 MWE:
\documentclass{article}
\usepackage{xltabular,multirow}
\pagestyle{empty}
\usepackage{makecell}
\setcellgapes{2.5pt}
\begin{document}
\renewcommand\arraystretch{1.4644}
\makegapedcells
\begin{center}\begin{xltabular}{\textwidth}{|
>{\setlength{\hsize}{0.076\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.129\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.087\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.167\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.14\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.116\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.16\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.125\hsize}\centering\arraybackslash}X|}
\hline
\multicolumn{3}{|c|}{A. bla bla bla
}
&\multicolumn{2}{c|}{B. bla bla bla
}
&C. bla bla bla bla bla bla bla bla bla bla bla bla
&D. bla bla bla bla bla bla bla bla bla bla bla bla
&E. bla bla bla bla bla bla bla bla bla bla bla bla bla
\\\cline{1-5}F. bla bla bla bla bla bla
&G. bla bla bla bla bla bla
&H. bla bla bla bla bla bla
&I. bla bla bla bla bla bla
&J. bla bla bla bla bla bla
&
&
&\\\hline
\end{xltabular}\end{center}
這使
當然,我想將單元格 C、D 和 E 轉換為 2 行單元格,以使用 FJ 單元格的垂直空間。使用以下程式碼:
\begin{center}\begin{xltabular}{\textwidth}{|
>{\setlength{\hsize}{0.076\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.129\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.087\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.167\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.14\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.116\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.16\hsize}\centering\arraybackslash}X|
>{\setlength{\hsize}{0.125\hsize}\centering\arraybackslash}X|}
\hline
\multicolumn{3}{|c|}{A. bla bla bla
}
&\multicolumn{2}{c|}{B. bla bla bla
}
&\multirow{2}{*}{C. bla bla bla bla bla bla bla bla bla bla bla bla}
&\multirow{2}{*}{D. bla bla bla bla bla bla bla bla bla bla bla bla}
&\multirow{2}{*}{E. bla bla bla bla bla bla bla bla bla bla bla bla bla }
\\\cline{1-5}F. bla bla bla bla bla bla
&G. bla bla bla bla bla bla
&H. bla bla bla bla bla bla
&I. bla bla bla bla bla bla
&J. bla bla bla bla bla bla
&
&
&\\\hline
\end{xltabular}\end{center}
我得到(相當令人失望的)結果:
你知道如何使用 來實現多行效果xltabular
嗎?
答案1
您可以使用`\multirow 的可選參數來向上或向下移動\multirow 的內容。這是帶有 \hsize 正確值的程式碼。我還減小了 \tabcolsep 的值,因為列寬非常小。人們也可能質疑是否有小數點後第三位的數值。
\documentclass{article}
\usepackage{geometry}
\usepackage{xltabular,multirow}
\pagestyle{empty}
\usepackage{makecell}
\setcellgapes{2.5pt}
\begin{document}
\renewcommand\arraystretch{1.4644}
\makegapedcells
\begin{center}
\setlength{\tabcolsep}{3pt}
\begin{xltabular}{\textwidth}{|
>{\hsize=0.608\hsize\centering\arraybackslash}X|
>{\hsize=1.032\hsize\centering\arraybackslash}X|
>{\hsize=0.696\hsize\centering\arraybackslash}X|
>{\hsize=1.336\hsize\centering\arraybackslash}X|
>{\hsize=1.12\hsize\centering\arraybackslash}X|
>{\hsize=0.928\hsize\centering\arraybackslash}X|
>{\hsize=1.28\hsize\centering\arraybackslash}X|
>{\centering\arraybackslash}X|
}
\hline
\multicolumn{3}{|c|}{A. bla bla bla
}
&\multicolumn{2}{c|}{B. bla bla bla
}
&\multirow{2}{=}[-0.9ex]{C. bla bla bla bla bla bla bla bla bla bla bla bla}
&\multirow{2}{=}[-0.9ex]{D. bla bla bla bla bla bla bla bla bla bla bla bla}
&\multirow{2}{=}[-0.9ex]{E. bla bla bla bla bla bla bla bla bla bla bla bla bla}
\\\cline{1-5}F. bla bla bla bla bla bla
&G. bla bla bla bla bla bla
&H. bla bla bla bla bla bla
&I. bla bla bla bla bla bla
&J. bla bla bla bla bla bla
&
&
&\\\hline
\end{xltabular}
\end{center}
\end{document}