複数行(2)垂直中央テキスト

Aug 16 2020

MWE:

\documentclass{standalone}
\usepackage{booktabs}
\usepackage{multirow}

\begin{document}

\begin{tabular}{@{}l|llll@{}}
\toprule
\multicolumn{1}{c|}{\multirow{2}{*}{Test}} & \multicolumn{4}{c}{A} \\ \cmidrule(l){2-5} 
\multicolumn{1}{c|}{}                      & 1   & 2   & 3   & 4   \\ \midrule
                                           &     &     &     &     \\
                                           &     &     &     &     \\ \bottomrule
\end{tabular}

\end{document}

出力:

これを見た、これ。どこかで、makecellまたはを使わなければなりmませんが、把握できません。「テスト」を垂直方向に揃えるのに役立つ情報。

回答

4 F.Pantigny Aug 16 2020 at 00:40

でできることは次のとおり{NiceTabular}ですnicematrix(最新バージョン:2020-10-06の5.4)。

\documentclass{article}
\usepackage{booktabs}
\usepackage{nicematrix}

\begin{document}

\begin{NiceTabular}{@{}l|llll@{}}
\toprule
\Block{2-1}{Test} & \Block{1-4}{A} \\ \cmidrule(l){2-5} 
                  & 1   & 2   & 3   & 4   \\ \midrule
                  &     &     &     &     \\
                  &     &     &     &     \\ \bottomrule
\end{NiceTabular}

\end{document}
  • では{NiceTabular}、を使用\Blockしてセルを垂直方向と水平方向の両方に結合します。

  • ブロックの内容は、マージされたセルの長方形の数学的な中心で構成されます(とは異なります\multirow)。

  • 垂直方向のルールは破られていないため、互換性booktabsがあります(ただし、垂直方向のルールの使用はの精神ではまったくないことに注意する必要がありますbooktabs)。

  • いくつかのコンパイルが必要です(nicematrixPGF / Tikzノードを使用するため)。

3 jsbibra Aug 16 2020 at 00:23

より良い影響とギャップのあるトラブルのために垂直を避けてください

この\multirowオプションは、上下の調整/センタリングを細かくするために10進値に変更できます。ここでは2.4の値に変更されています。

\documentclass{article}
\usepackage{booktabs}
\usepackage{multirow}

\begin{document}
\begin{table}[]
\begin{tabular}{@{}lllll@{}}                                      \toprule                    
\multirow{2.4}{*}{Test}         & \multicolumn{4}{c}{A}                 \\ \cmidrule(l){2-5}   
                                & 1                     & 2   & 3   & 4 \\ \midrule
                                & X                     & Y   & Z   & A \\
                                & P                     & Q   & R   & S \\ \bottomrule 
\end{tabular}
\end{table}

\end{document}