我希望每个单元格中的文本水平居中。但即使表格设置为“c”,也未实现。请注意,我并未尝试使用多行 - 这是一行,每个单元格中有两行文本。也许 \parbox 不是正确的方法。
\documentclass{article}
\begin{document}
\begin{tabular}{ |c|c| }
\parbox[c]{1.4cm}{foo\\longer} &
\parbox[c]{1.4cm}{bar\\center} \\
\end{tabular}
\end{document}
答案1
另外两个解决方案:
\documentclass{article}
\usepackage{makecell}
\usepackage{tabularray}
\begin{document}
with \verb+makecell+:
\medskip
\begin{tabular}{ |wc{14mm}|wc{14mm}| }
\makecell{foo\\ longer}
& \makecell{bar\\ center}
\end{tabular}
\bigskip
with \verb+tabularray+:
\medskip
\begin{tblr}{ |Q[c,14mm]|Q[c,14mm]| }
{foo\\ longer}
& {bar\\ center}
\end{tblr}
\end{document}
编辑:
使用tabularray
如上例所示的列规范,您不需要手动拆分单元格中的文本:
\documentclass{article}
\usepackage{tabularray}
\begin{document}
\begin{tblr}{ |Q[c,14mm]|Q[c,14mm]| }
foo longer
& bar center
\end{tblr}
\end{document}
结果和以前一样。
附录:
在这种情况下,表格单元格可以具有自然宽度,正如@LJR在下面的评论中所建议的那样(非常感谢),然后您可以省略它们的宽度规定:
\documentclass{article}
\usepackage{makecell}
\usepackage{tabularray}
\begin{document}
with \verb+makecell+:
\medskip
\begin{tabular}{ |c|c| }
\makecell{foo\\ longer}
& \makecell{bar\\ center}
\end{tabular}
\bigskip
with \verb+tabularray+:
\medskip
\begin{tblr}{ |c|c| }
{foo\\ longer}
& {bar\\ center}
\end{tblr}
\end{document}