在表格中混合顶部对齐

在表格中混合顶部对齐

我已经想不通了。为什么不能在表格中混合使用顶部对齐?

\documentclass[a4paper, 12pt, bibliography=totocnumbered]{scrartcl}
\usepackage{amsfonts}

\begin{document}
\begin{table}[h]%
\begin{tabular}{c|c|p{0.3\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen & \Huge\checkmark \\
\end{tabular}%
\end{table}%
\end{document}

简单来说,表格列应该是中心 | 中心 | 顶部 | 中心。但我无法得到它。

在此处输入图片描述

答案1

为了实现包含列的单行所需的垂直居中对齐,您可以使用m类型列而不是类型p列。在下面的示例中,我还展示了如何在第三列上实现不规则右对齐,因为目前单词之间的空格很大。

在此处输入图片描述

\documentclass[a4paper, 12pt, bibliography=totocnumbered]{scrartcl}
\usepackage{amsfonts}
\usepackage{array}
\usepackage{ragged2e}

\newcolumntype{L}[1]{>{\RaggedRight\arraybackslash}m{#1}}

\begin{document}
\begin{table}[h]%
\begin{tabular}{c|c|m{0.3\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen  & \Huge\checkmark \\
\end{tabular}%
\end{table}%

\begin{table}[h]%
\begin{tabular}{c|c|L{0.3\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen  & \Huge\checkmark \\
\end{tabular}%
\end{table}%
\end{document}

答案2

三种可能性:

在此处输入图片描述

按照我的口味,我会使用最后一个例子。在第一个例子里,很难看出新行从哪里开始。但你可以选择一个你喜欢的解决方案:-)

\documentclass[a4paper, 12pt, bibliography=totocnumbered]{scrartcl}
\usepackage{ragged2e}
\usepackage{array, multirow}
\usepackage{amssymb}

\begin{document}
\begin{table}[ht]%
\begin{tabular}{c|c|>{\RaggedRight}m{0.35\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen & \Huge\checkmark \\
\end{tabular}%
\end{table}

\begin{table}[ht]%
\begin{tabular}{c|c|>{\RaggedRight}p{0.35\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen & \Huge\checkmark \\
\end{tabular}%
\end{table}%

\begin{table}[ht]%
\begin{tabular}{c|c|>{\RaggedRight}p{0.35\textwidth}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen & \multirow{4}{*}{\Huge\checkmark} \\
\end{tabular}%
\end{table}%
\end{document}

附录: 为了完整性,第一个解决方案的改进版本。在第三列的单元格内容周围添加了更多的垂直空间。为此使用了cellspace包:

\documentclass[a4paper, 12pt, bibliography=totocnumbered]{scrartcl}
\usepackage{ragged2e}
\usepackage{array, cellspace, multirow}
\setlength\cellspacetoplimit{4pt}
\setlength\cellspacebottomlimit{4pt}

\usepackage{amssymb}

\begin{document}
\begin{table}[ht]%
\begin{tabular}{c|c|>{\RaggedRight}S{m{0.35\textwidth}}|c}
ID & Klasse & Beschreibung & Status \\
center & center & top Die Scriping-Umgebung kann zur Laufzeit String-Variablen in Maschinencode übersetzen und ausführen & \Huge\checkmark \\
\end{tabular}%
\end{table}
\end{document}

在此处输入图片描述

相关内容