使用此代码时,一切正常:
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{cellspace}
\begin{document}
\begin{tabular}{|c|S{p{1cm}}|}
\hline
foo & bar \\
\hline
a & É \\
\hline
\end{tabular}
\end{document}
但是当带有p
-column 类型且cellspace
包含空单元格时,如以下代码所示:
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{cellspace}
\begin{document}
\begin{tabular}{|c|S{p{1cm}}|}
\hline
foo & \\
\hline
a & É \\
\hline
\end{tabular}
\end{document}
我获得了白色的第一页,在第二页上,第一行的高度很大:
日志包含以下消息:
\output 处于活动状态时,发生 \vbox 过满(482.37025pt 太高)的情况
这是预期的行为吗?
为了解决这个问题,我可以使用显式空格 ( ) 来代替空单元格\
。但也许有更好的解决方案?
m
与-column-type (来自array
包)相同的错误。l
并且c
column r
-types 不受这种奇怪行为的影响。
答案1
>{\arraybackslash}
在最后一列添加:
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{cellspace}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{4pt}
\begin{document}
\begin{tabular}{|c|S{>{\arraybackslash}p{1cm}}|}
\hline
foo & \\
\hline
a & É \\
\hline
\end{tabular}
\end{document}