我尝试在表格环境中设置换行符,其中列未使用 p{$width} 定义。我尝试了以下操作,但没有得到预期的结果
\documentclass{article}
\begin{document}
expected result:
\begin{tabular}{|p{15mm}|l|l|}
\hline
X1\newline{}X2 & text & another text\\\hline
\end{tabular}
real result:
\begin{tabular}{|l|l|l|}
\hline
X1\newline{}X2 (no newline) & a text & another ext\\\hline
\begin{tabular}{l}
X1\\
X2
\end{tabular}
& a text (not on top) & another text\\\hline
\end{tabular}
\end{document}
有什么提示吗?
答案1
放入另一个表格中:
\documentclass{article}
\def\Stack#1{\tabular[t]{@{}l@{}}#1\endtabular}
\begin{document}
expected result:
\begin{tabular}{|p{15mm}|l|l|}\hline
X1\newline{}X2 & text & another text\\\hline
\end{tabular}
real result:
\begin{tabular}{|l|l|l|}\hline
\Stack{X1\\X2} & a text & another ext\\\hline
\begin{tabular}{@{}l@{}}
X1\\
X2
\end{tabular}
& a text (not on top) & another text\\\hline
\end{tabular}
\end{document}
答案2
抱歉,我误读了您的表格,因此第一个答案是无稽之谈。
l
列就像\mbox
不允许换行一样。您需要使用p
列或在单元格中嵌套另一个结构(例如表格或 parbox)以允许多行,就像您对\mbox
或所做的那样\fbox