我对我的硕士论文 (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。在我thead
从makecell
包中使用的代码中。当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}