旋转单元格的垂直对齐

旋转单元格的垂直对齐

我知道使用 turn 命令和这样的示例代码:

\usepackage{rotating}

\begin{turn}{90} Supervised Learning \end{turn}}

我们可以旋转单元格内的文本,但是,我找不到让旋转后的文本垂直居中的方法。任何建议都值得赞赏。

以下是示例 MWE:

\begin{table}[]
    \centering
    \begin{tabular}{|>{\centering\arraybackslash}m{0.5cm}|c|>{\centering\arraybackslash}m{8cm}|}
        \hline
        \multicolumn{2}{|c|}{Classification} & References \\ \hline
        %\multirow{2}{*}{{\begin{turn}{90}Supervised Learning\end{turn}}}   
        \multirow{2}{*}{\rotatebox[origin=c]{90}{Supervised Learning}} 
\end{tabular}
    \caption{A Classification}
    \label{tab:Machine_Learning_models}
\end{table}

在此处输入图片描述

答案1

由于您的问题似乎是不稳定的系统...我担心我的回答会偏离您的要点,因为这是 Mico 的回答(以删除结束):-()

无论如何,为了锻炼:

  • 旋转后的文本比表格的其余部分高,因此无法正确居中
  • 旋转单元格内容的更简单方法是使用包\rothead中的宏makecell(您需要定义单元格高度)
  • 单元格垂直居中multirow需要手动调整

通过这个(并扩展表格),我得到以下结果:

在此处输入图片描述

梅威瑟:

\documentclass{article}
\usepackage{rotating}
\usepackage{array,makecell,multirow}

\begin{document}
\begin{table}[htb]
    \centering
    \settowidth\rotheadsize{Supervised Learning}
    \begin{tabular}{| l | c |
                     >{\centering\arraybackslash}p{8cm}|}
    \hline
\multicolumn{2}{|c|}{Classification}    &   References  \\ \hline
\multirow{8}{*}[1.5ex]{\rothead{Supervised Learning}}  
        &                               &  1            \\ \cline{2-3}
        &                               &  2            \\ \cline{2-3}
        &                               &  3            \\ \cline{2-3}
        &                               &  4            \\ \cline{2-3}
        &                               &  5            \\ \cline{2-3}
        &                               &  6            \\ \cline{2-3}
        &                               &  7            \\ \cline{2-3}
        &                               &  8            \\ \hline                \end{tabular}
\caption{A Classification}
    \label{tab:Machine_Learning_models}
\end{table}
\end{document}

附录: 中的文本字体大小\rothead由宏决定\headfont。默认值为\footnotesize。可以通过以下方式更改

\renewcommand\theadfont{\normalsize}

(或您喜欢的任何大小、字体系列和形状)。考虑到上述字体大小的变化,MWE 的相关部分变为:

\documentclass{article}
\usepackage{rotating}
\usepackage{array,makecell,multirow}
\renewcommand\theadfont{\normalsize}% <-- added

\begin{document}
\begin{table}[htb]
    \centering
    \settowidth\rotheadsize{\theadfont Supervised Learning}% <-- changed
    \begin{tabular}{| l | c |
                     >{\centering\arraybackslash}p{8cm}|}
    \hline
\multicolumn{2}{|c|}{Classification}    &   References  \\ \hline
\multirow{8}{*}{\rothead{Supervised Learning}}% <-- changed
% further is the same as in above MWE

表格如下所示:

在此处输入图片描述

相关内容