请考虑下面的表格示例,第二行的文本被换行。
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{tabu}
\usepackage{booktabs}
\usepackage{array}
\setlength{\extrarowheight}{5pt}
\begin{document}
\begin{tabu} to \linewidth {X[.5,c] X[1,l] X[1,l] X[2,l]}
\toprule
\rowfont{\bfseries}
Row & Head 1 & Head 2 & Head 3 \\\hline
1. & short text & ? & ? \\\hline
2. & long long long long text & ? & ? \\\hline
3. & short text & ? & ? \\\hline
4. & short text & ? & ? \\
\bottomrule
\end{tabu}
\end{document}
其渲染效果如下:
为什么第二行的文本与其下方的规则之间的空间这么小?
我该如何修复它?
我想到的是使用\\[1ex]
而不是\\
,有没有更好的解决方案?
答案1
这是 的一个已知缺陷tabu
;它\strut
在可能有多行单元格的开头添加了 ,但没有在结尾添加。比较输出(我g
在短文本中添加了 ,以便更好地进行比较)。
\documentclass[a4paper]{article}
\usepackage[english]{babel}
\usepackage[utf8x]{inputenc}
\usepackage{tabu}
\usepackage{booktabs}
\usepackage{array}
\setlength{\extrarowheight}{5pt}
\begin{document}
\noindent
\begin{tabu} to \linewidth {X[.5,c] X[1,l] X[1,l] X[2,l]}
\toprule
\rowfont{\bfseries}
Row & Head 1 & Head 2 & Head 3 \\\hline
1. & gshort text & ? & ? \\\hline
2. & long long long long text & ? & ? \\\hline
3. & gshort text & ? & ? \\\hline
4. & gshort text & ? & ? \\
\bottomrule
\end{tabu}
\bigskip
\noindent
\begin{tabu} to \linewidth {X[.5,c] X[1,l]<{\strut} X[1,l] X[2,l]}
\toprule
\rowfont{\bfseries}
Row & Head 1 & Head 2 & Head 3 \\\hline
1. & gshort text & ? & ? \\\hline
2. & long long long long text & ? & ? \\\hline
3. & gshort text & ? & ? \\\hline
4. & gshort text & ? & ? \\
\bottomrule
\end{tabu}
\end{document}