表格中的旋转框有换行吗?

表格中的旋转框有换行吗?

我用来\rotatebox创建带有垂直标题的表格,如下所示:

\documentclass{article}

\usepackage{rotating}

\begin{document} 

\begin{table}
\begin{tabular}{|l|l|l|}
\hline
\rotatebox{90}{Header 1} &
\rotatebox{90}{Header 2} &
\rotatebox{90}{Header 3}\\
\hline
Content & Content & Content\\
\hline
\end{tabular}
\end{table}

\end{document}

现在,我的标题太长了(而且无法以有意义的方式缩写)。我想将标题分成两行。但是,我似乎无法让其与\linebreak或配合使用\\,因此显然需要一些技巧。

帮助?

答案1

如何将“有问题的”标题放入\parbox并在必要时手动添加\\(在框内工作)?

\documentclass{article}

\usepackage{rotating}

\begin{document} 

\begin{table}
\begin{tabular}{|l|l|l|}
\hline
\rotatebox{90}{Header 1} &
\rotatebox{90}{Header 2} &
\rotatebox{90}{\parbox{4cm}{An awkwardly long \\header that cannot be \\abbreviated in a \\meaningful way}}\\
\hline
Content & Content & Content\\
\hline
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

答案2

您可以将长标题包装在\parbox

在此处输入图片描述

\documentclass{article}

\usepackage{rotating}

\begin{document} 

\begin{table}
\begin{tabular}{|l|l|l|}
\hline
\rotatebox{90}{Header 1} &
\rotatebox{90}{Header 2} &
\rotatebox{90}{\parbox{1.5cm}{Long Header Over Several Lines}}\\
\hline
Content & Content & Content\\
\hline
\end{tabular}
\end{table}

\end{document}

答案3

您可以\adjustbox{minipage=<width>,rotate=<angle>}{some text\\with line break}使用adjustbox包用于创建具有给定宽度的旋转框,可以进行手动和自动换行。

答案4

如果您使用tabularx而不是tabular并且您的列类型是,X那么上述解决方案可能无法按预期工作(请参阅他的问题:tabularx 中的旋转和换行问题)。

解决方案是使用\raggedright

\begin{table}
  \begin{tabularx}{\textwidth}{|X|X|X|X|X|X|}
    \multicolumn{1}{l|}{%
        \rotatebox{90}{\parbox{2cm}{\raggedright Some Longer Text}}} &
  \end{tabularx}
\end{table}

相关内容