tabularx:带有手动换行符的单元格|垂直线问题

tabularx:带有手动换行符的单元格|垂直线问题

当我有一个手动换行在表格的单元格中tabularx,垂直线就会消失。

\documentclass{article}

\usepackage{tabularx}

\usepackage[sfdefault]{cabin}

% https://tex.stackexchange.com/questions/89166
\newcolumntype{Y}{>{\centering\arraybackslash}X} 

\begin{document}

\begin{tabularx}{\textwidth}{lc|l|Y|Y|Y|Y}
\hline
% Row
Text & & & & & & \\ \hline
% Row
Text\\ Text & & & & & & \\ \hline
\end{tabularx}

\end{document}

在此处输入图片描述

有关的

答案1

如果您希望在某一列类型中使用换行符l, c, r,则必须加载 makecell包并使用其同名命令。否则,\\将被视为行更改。使用此代码,就可以了:

\documentclass{article}

\usepackage{tabularx, makecell}

\usepackage{fontawesome}

\usepackage[sfdefault]{cabin}

% https://tex.stackexchange.com/questions/89166
\newcolumntype{Y}{>{\centering\arraybackslash}X}

\begin{document}

\begin{tabularx}{\textwidth}{lc|l|Y|Y|Y|Y}
\hline
% Row
Text & & & & & & \\ \hline
% Row
\makecell[l]{Text\\ Text} & & & & & & \\ \hline
\end{tabularx}

\end{document}

在此处输入图片描述

答案2

您始终可以在表格中放置框,但\\不会结束表格行。一个方便的命令是,\pbox因为它不会占用比必要更多的空间,但具有最大宽度。不幸的是,垂直间距不适合\pbox。以下是一个例子:

\documentclass{article}

\usepackage{tabularx}
\usepackage{pbox}

% https://tex.stackexchange.com/questions/89166
\newcolumntype{Y}{>{\centering\arraybackslash}X} 

\begin{document}

\begin{tabularx}{\textwidth}{lc|l|Y|Y|Y|Y}
\hline
% Row
Text & & & & & & \\ \hline
% Row
\pbox{\textwidth}{Text\\ Text} & & & & & & \\ \hline
\end{tabularx}

\end{document}

结果

可以清楚地看到,上图中的垂直间距不正确。

相关内容