在 -turn- 环境中包装表格列标题?

在 -turn- 环境中包装表格列标题?

我正在尝试在 turn 环境中将文本换行到表格列标题中(来自 -rotating- 包)。有没有办法使用 turn 来执行此操作,或者是否必须嵌入小页面(例如...... & \begin{turn}{60}\begin{minipage}[t]{3cm}\textbf{Returned Surveys}\end{mini page})?还有其他想法吗?
笔记:我正在使用统计程序来生成/编织代码到 latex 文档中,而将 minipage 代码放在 turn 环境中会导致字符串长度的其他问题 - 我宁愿使用 turn 的替代方案或 turn 中的选项来解决这个问题)。感谢您的任何建议!

例子:

\documentclass{article}
\usepackage{booktabs,rotating,tabularx}
\begin{document}

\begin{table}[htbp]
\centering
\caption{Add caption}
\begin{tabular}{p{7cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}p{1cm}rrrrr}
\textbf{OTP Name} & \begin{turn}{60}\textbf{Initial Email Sent}\end{turn} & \begin{turn}{60}\begin{minipage}[t]{3cm}\textbf{Returned Surveys}\end{minipage}\end{turn} & \begin{turn}{60}\textbf{Survey Reminder Sent}\end{turn} & \begin{turn}{60}\textbf{Response Received from Reminder}\end{turn} & \begin{turn}{60}\textbf{Returned Surveys}\end{turn} \\
\midrule
UAMS Psychiatric Research Institute & x & & x & & x \\
Valley Alliance Treatment Services & x & & x & x & \\
\ldots &&&&&&&\\
\bottomrule
\end{tabular}%
\label{tab:addlabel}%
\end{table}%

\end{document}

答案1

以下是你可能的选择。它修改了我的解决方案表格中的旋转列标题以适应你的情况:

表格中的旋转列标题

\documentclass{article}
\usepackage{booktabs}% http://ctan.org/pkg/booktabs
\usepackage{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{varwidth}% http://ctan.org/pkg/varwidth

\newcommand{\turn}[3][10em]{% \turn[<width>]{<angle>}{<stuff>}
  \rlap{\rotatebox{#2}{\begin{varwidth}[t]{#1}\bfseries#3\end{varwidth}}}%
}
\begin{document}

\begin{table}[htbp]
  \centering
  \caption{Add caption}
  \begin{tabular}{p{7cm}*{5}{p{1cm}}}
    \textbf{OTP Name} & 
      \turn{60}{Initial Email Sent} & 
      \turn[3cm]{60}{Returned Surveys} & 
      \turn{60}{Survey Reminder Sent} & 
      \turn{60}{Response Received from Reminder} & 
      \turn{60}{Returned Surveys} \\
    \midrule
    UAMS Psychiatric Research Institute & x & & x & & x \\
    Valley Alliance Treatment Services & x & & x & x & \\
    \ldots & & & & & \\
    \bottomrule
  \end{tabular}
  \label{tab:addlabel}
\end{table}
\end{document}​

varwidth提供与环境允许的类似的接口minipage,但如果宽度为更长比其内容长。minipage如果长度为更短graphicx允许按度数旋转一定角度。

在上面的例子中,命令以角度\turn[<width>]{<angle>}{<stuff>}旋转,包裹的长度/宽度为(默认值为;可根据需要更改)。它还设置在<stuff><angle><width>10em<stuff>大胆的默认情况下,由于\bfseries,并将其放在零宽度框中(感谢\rlap),因此您不会收到。对于非常长且包装的标头,这可能不是最佳选择。但是您应该问自己是否应该修改结构。

还请注意,重复列规范使用缩写符号。使用*{<num>}{<colspec>}重复<colspec><num>次数。它很有用,并且避免计算您是否恰好(比如说)r中有 11 个列rrrrrrrrrrr

相关内容