如何将文本放置在表格单元格的左上角

如何将文本放置在表格单元格的左上角

我们可以用

\renewcommand{\arraystretch}{2}

增加行高。但是,文本却位于中间。

怎样才能简单地把它放在左上角,就像图中第二列和第三列那样?

注意:这是由 Tikz 绘制的。如果可能的话,我希望使用表格。

3 列

答案1

通过使用tabularray包可以很容易地实现这一点。它定义了belowskip设置单元格内容下方垂直距离的选项:

\documentclass{article}
\usepackage{tabularray}

\begin{document}

\begin{tblr}{hlines, vlines,
              colspec = {*{3}{c}},
             belowsep = 12mm,
             }
a) T.Insert(8) & b) T.Insert(12) & c) T.Insert(10)  \\
\end{tblr}

\end{document}

在此处输入图片描述

附录: 让我添加单元格内容的左上对齐。如果单元格的宽度大于此文本宽度,则可见。假设所有单元格的宽度相同,并且表格宽度等于\textwidth,则单元格说明符应为X[l]}。单元格中文本的新定位更清晰可见,让我们添加geometry更宽文本区域的包:

\documentclass{article}
\usepackage{geometry}
\usepackage{tabularray}

\begin{document}

\begin{tblr}{hlines, vlines,
              colspec = {*{3}{X[l]}},
             belowsep = 12mm,
             }
a) T.Insert(8) & b) T.Insert(12) & c) T.Insert(10)  \\
\end{tblr}

\end{document}

在此处输入图片描述

答案2

最简单的解决方案是修改单元格的内容,第一个解决方案添加了一个向下延伸的“支柱”,而第二个解决方案展示了一种更通用的方法\raisebox

\documentclass{article}
\begin{document}
\begin{tabular}{|c|c|c|}
\hline
\rule[-2\normalbaselineskip]{0pt}{3\normalbaselineskip}% strut
a) T.Insert(8) & b) T.Insert(12) & c) T.Insert(10) \\
\hline
\end{tabular}

\bigskip
\begin{tabular}{|c|c|c|}
\hline
\raisebox{\normalbaselineskip}{a) T.Insert(8)} & 
\raisebox{0pt}[2\normalbaselineskip][1.6\normalbaselineskip]{b) T.Insert(12)} &% baseline here
\raisebox{-\normalbaselineskip}{c) T.Insert(10)} \\
\hline
\end{tabular}
\end{document}

表格

相关内容