表格中的垂直对齐似乎被破坏了

表格中的垂直对齐似乎被破坏了

使用m表格中的列,我希望获得垂直居中的单元格:

\documentclass[a4paper, 12pt]{article}

\usepackage{amsmath}
\usepackage{array}

\begin{document}
\normalsize
\textbf{Some title}
\newline 
\newline 
\begin{tabular}{m{0.5 cm}>{}m{10 cm}|>{}m{4 cm}@{}m{0pt}@{}}
\hline 
\textbf{1.} & $11 \times \text{?} = 9$ & & \tabularnewline [0.8cm] \hline 
\textbf{2.} & $\text{?} \times \text{?} = 72$ & & \tabularnewline [0.8cm] \hline 

\end{tabular}

\end{document}

但是使用 lualatex 1.07 (TeX Live 2018),我得到:

单元格垂直对齐的表格

而 lualatex 1.0.4 (TeX Live 2017) 确实正确地将单元格垂直居中。

这是错误吗?我应该更正表格格式吗?或者 1.07 版本有解决方法吗?

(编辑:目标是让文本垂直居中,就像使用 lualatex 1.0.4 软件版本一样:对于失败的 TeX Live 2018 / lualatex 1.07:

lualatex 2018.7.28
LaTeX2e <2018-04-01> patch level 2
array.sty    2018/04/07 v2.4g

以前运行的 TeX Live 2017 / lualatex 1.0.4 有以下版本:

lualatex 2018.1.13
LaTeX2e <2017-04-15>
array.sty    2016/10/06 v2.4d

答案1

lualatex 在这里不相关,您可以从 pdflatex 或 xelatex 看到相同的输出。

您将看到对列进行错误修复的效果m,正如您使用如下所示的旧版本代码所看到的那样 [=2016-10-06]

在此处输入图片描述

\documentclass[a4paper, 12pt]{article}

\usepackage{amsmath}
\usepackage{array}[=2016-10-06]

\begin{document}
\normalsize
\textbf{Some title}
\newline 
\newline 
\begin{tabular}{m{0.5 cm}>{}m{10 cm}|>{}m{4 cm}@{}m{0pt}@{}}
\hline 
\textbf{1.} & $11 \times \text{?} = 9$ & & \tabularnewline [0.8cm] \hline 
\textbf{2.} & $\text{?} \times \text{?} = 72$ & & \tabularnewline [0.8cm] \hline 

\end{tabular}

\end{document}

答案2

您可以使用该cellspace包,它允许您定义一个最小在带有以字母为前缀的说明符的列中,单元格顶部和底部的垂直间距S((如果出于兼容性原因而C加载):siunitx

\documentclass[a4paper, 12pt]{article}

\usepackage{amsmath}
\usepackage{array, cellspace}
\setlength{\cellspacetoplimit}{0.6cm}
\setlength{\cellspacebottomlimit}{0.6cm}

\begin{document}
\normalsize
\textbf{Some title}
\newline
\newline
\begin{tabular}{S{m{0.5 cm}}>{}S{m{10 cm}}|>{}m{4 cm}@{}m{0pt}@{}}
\hline
 \textbf{1.}& $11 \times \text{?} = 9$ & & \\ \hline
\textbf{2.} & $\text{?} \times \text{?} = 72$ & & \\ \hline
\end{tabular}

\end{document} 

在此处输入图片描述

相关内容