在 tabularx 环境中指定表

在 tabularx 环境中指定表

我对我的硕士论文 (scrbook) 中表格的出现有一些非常具体的要求。我在这个论坛上找到了一些帮助,但没有适合我的“解决方案”。下面您可以看到我对表格的实际解决方法:

    \begin{table}[h]
      \caption{xyz}
      \label{xyz}
      \centering\sffamily
        \begin{tabularx}{1.0\textwidth}{|X|X|X|}
            \hline
            \rowcolor[gray]{0.8}
            \multicolumn{1}{|c|}{\textbf{xyz}} & \multicolumn{1}{|c|}{\textbf{xyz}} & \multicolumn{1}{c|}{\textbf{xyz}} \\ \hline
            \textbf{xyz} & xyz & xyz \\ \hline
            \textbf{xyz} & xyz & xyz \\ \hline
            \textbf{xyz} & xyz & xyz \\ \hline
            \textbf{xyz} & xyz & xyz \\ \hline
        \end{tabularx}
    \end{table}

如果我的机构的要求尚未实施,则下面列出。

(1)第一行高度为1cm,文字为粗体且水平和垂直居中。

(2) 第一列的文本应垂直居中、水平左对齐(除第一个单元格外,该单元格适用格式(1))。

(3)其余文字应水平左对齐、垂直上对齐。

此外,我已经通过使用设置了我的全局线传播

    \renewcommand{\baselinestretch}{1.12}

我希望在我的表格中使用单倍行距,但使用 \setspace 命令不是一种选择。 有可能实现这一切吗? 我已经考虑过将表格准备为 pdf 并将其输入为图形...

我希望我所描述的问题能够让大家理解;)否则我会再试一次!!

欢呼吧,朱利安

答案1

你喜欢这样的东西吗: 在此处输入图片描述

我没有测量第一行的高度(应该约为 1cm),对于其他行,我知道它们没有要求最小高度为 1cm。在我theadmakecell包中使用的代码中。当renewcommad我为它们选择粗体字体时,第一列中的粗体字体由第一列的选项决定。

第一列单元格的垂直居中是通过 实现的\multirowcell,其中您需要确定行中最高单元格的行数。

代码:

\documentclass{article}
    \usepackage[svgnames,table]{xcolor}
    \usepackage{array,makecell,multirow,tabularx}
\renewcommand\theadfont{\bfseries}
\renewcommand{\arraystretch}{1.2}% for global setting 
                                 % (amount select according to your taste) 
\usepackage[active,floats,tightpage]{preview}
\setlength\PreviewBorder{5pt}%

\begin{document}
    \begin{table}[h]
%\renewcommand{\arraystretch}{1.2}% only for local use 
      \caption{xyz}
      \label{xyz}
      \centering\sffamily
        \begin{tabularx}{\textwidth}{|>{\bfseries}X|X|X|}
            \hline
            \rowcolor[gray]{0.8}
\thead{xyz} &   \thead{xyz} &   \thead{xyz} \\  \hline
\multirowcell{1}{xyz}   &   xyz         &   xyz         \\  \hline
\multirowcell{1}{xyz}   &   xyz         &   xyz         \\  \hline
\multirowcell{1}{xyz}   &   xyz         &   xyz         \\  \hline
\multirowcell{2}{xyz}   % {2}: number of lines in cell  
                        &   xyz\newline
                            xyz         &   xyz         \\  \hline
        \end{tabularx}
    \end{table}
\end{document}

相关内容