如何将表格扩展到小页面的高度

如何将表格扩展到小页面的高度

我有左边的表格,而我想要的是右边的表格。

也就是说,将表格单元格分布或跨越整个minipage环境。

我怎么做?

在此处输入图片描述

代码:

% !TEX TS-program = xelatex
% !TEX encoding = UTF-8 Unicode
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{tabularx}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\newfontfamily\englishfont{Arial}[Script=Latin,Language=English]
\begin{document}

\begin{minipage}[b][14cm][t]{10cm}
  \begin{tabularx}{\textwidth} { 
    | >{\centering\arraybackslash}X   |
  }
 \hline
 item 1 \\
 \hline
 item 2 \\
 \hline
 item 3 \\
 \hline
 item 4 \\
\hline
 item 5 \\
\hline
 item 6 \\
\hline
 item 7 \\
\hline

  \end{tabularx}
\end{minipage}

\end{document}

答案1

这是另一种解决方案tabularraytblr包:您可以在环境中轻松设置行高:

\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{tabularray}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\newfontfamily\englishfont{Arial}[Script=Latin,Language=English]
\begin{document}

\begin{tblr}{width=10cm,colspec={X[c]},rows={ht=2cm},hlines,vlines}
 item 1 \\
 item 2 \\
 item 3 \\
 item 4 \\
 item 5 \\
 item 6 \\
 item 7 \\
\end{tblr}

\newcommand*\getrowht[1]{%
  \dimexpr
    (
      #1
       - 4pt * \value{rowcount}         % rowsep sizes
       - 0.4pt * (\value{rowcount} + 1) % hrule sizes
    ) / \value{rowcount}
  \relax
}

\begin{tblr}{
  width=10cm,colspec={X[c]},hlines,vlines,
  rows={ht=\getrowht{14cm}}
}
 item 1 \\
 item 2 \\
 item 3 \\
 item 4 \\
 item 5 \\
 item 6 \\
 item 7 \\
\end{tblr}

\end{document}

在此处输入图片描述

相关内容