答案1
我认为整页是指页面的文本区域。
该命令\blankrows{<nn>}
添加nn
空白行。(来自https://tex.stackexchange.com/a/62178/161015)
填充页面的确切空白行数取决于纸张大小和页面布局。本例中为 43。
该软件包提供了替换和的nicematrix
命令,并且还允许使用内部。\Block
\multicolumn
\multirow
\\
\Block{}{Lernbereich \\ \scriptsize (Sprechen, Grammatik, \\ \scriptsize Lesen, \dots{})}
定义一个有三行的 1x1 单元格,最后两行字体较小。
列类型P{<number>}
以 的分数来设置列的宽度\textwidth
,所有五列加一\textwidth
。
30 行,显示边距
43 行,整页
\documentclass{article}
\usepackage{tikz}% needed <<<<
\usepackage{nicematrix}% needed <<<<
\usepackage{amssymb} % checkmark
% From https://tex.stackexchange.com/a/62178/161015
\newcommand{\blankrows}[1]{%
\def\temp{}%
\foreach \i in {1,...,#1}
{%
\expandafter\gdef\expandafter\temp\expandafter{\temp & & & & \\}%
}%
\temp}
\usepackage{showframe} % to show margins
\newcolumntype{P}[1]{>{\sffamily\centering\arraybackslash}p{#1\textwidth-\arrayrulewidth}}
\setlength{\tabcolsep}{0pt}
\begin{document}
\noindent
\begin{NiceTabular}{|P{0.2}|P{0.3}|P{0.2}|P{0.2}|P{0.1}|}
\hline
Datum & \Block{}{Lernbereich \\ \scriptsize (Sprechen, Grammatik, \\ \scriptsize Lesen, \dots{})} & Thema & Material & \LARGE\color{green}\checkmark \\
\hline
\blankrows{30} % add rows
\hline
\end{NiceTabular}
\end{document}
替代解决方案,按照 Bernard 的评论:放置一个不可见的规则,其高度应到达文本区域的底部。在这种情况下0.925\textheight
。代码更简单。
\documentclass{article}
\usepackage{nicematrix}% needed <<<<
\usepackage{amssymb} % checkmark
\usepackage{showframe} % to show margins
\newcolumntype{P}[1]{>{\sffamily\centering\arraybackslash}p{#1\textwidth-\arrayrulewidth}}
\setlength{\tabcolsep}{0pt}
\begin{document}
\noindent
\begin{NiceTabular}{|P{0.2}|P{0.3}|P{0.2}|P{0.2}|P{0.1}|}
\hline
Datum & \Block{}{Lernbereich \\ \scriptsize (Sprechen, Grammatik, \\ \scriptsize Lesen, \dots{})} & Thema & Material & \LARGE\color{green}\checkmark \\
\hline
\rule{0pt}{0.925\textheight}& & & & \\ % add space until the end of the text area
\hline
\end{NiceTabular}
\end{document}
但第一个解决方案更加灵活。如果需要,您可以插入水平线。
使用命令\replicate{<nn>}{<command>}
复制command
nn
时间。
\documentclass{article}
\usepackage{tikz}% needed <<<<
\usepackage{nicematrix}% needed <<<<
\usepackage{amssymb} % checkmark
% From https://tex.stackexchange.com/a/62178/161015
\newcommand{\replicate}[2]{%
\def\temp{}%
\foreach \i in {1,...,#1}{\expandafter\gdef\expandafter\temp\expandafter{\temp #2}}%
\temp}
%\usepackage{showframe} % to show margins
\newcolumntype{P}[1]{>{\sffamily\centering\arraybackslash}p{#1\textwidth-\arrayrulewidth}}
\setlength{\tabcolsep}{0pt}
\renewcommand{\arraystretch}{1.8}
\begin{document}
\noindent
\begin{NiceTabular}{|P{0.2}|P{0.3}|P{0.2}|P{0.2}|P{0.1}|}
\hline
Datum & \Block{}{Lernbereich \\ \scriptsize (Sprechen, Grammatik, \\ \scriptsize Lesen, \dots{})} & Thema & Material & \LARGE\color{green}\checkmark \\
\hline
\replicate{21}{ & & & &\\ \hline} % add lines
\hline
\end{NiceTabular}
\end{document}
和并给行编号。
\documentclass{article}
\usepackage{tikz}% needed <<<<
\usepackage{nicematrix}% needed <<<<
\usepackage{amssymb} % checkmark
\newcounter{rowcount}
\setcounter{rowcount}{1}
% From https://tex.stackexchange.com/a/62178/161015
\newcommand{\replicate}[2]{%
\def\temp{}%
\foreach \i in {1,...,#1}{\expandafter\gdef\expandafter\temp\expandafter{\temp #2}}%
\temp}
%\usepackage{showframe} % to show margins
\newcolumntype{P}[1]{>{\sffamily\centering\arraybackslash}m{#1\textwidth-\arrayrulewidth}}
\setlength{\tabcolsep}{0pt}
\renewcommand{\arraystretch}{1.8}
\begin{document}
\noindent
\begin{NiceTabular}{|P{0.1}|P{0.15}|P{0.25}|P{0.2}|P{0.2}|P{0.1}|}
\hline
\# & Datum & \Block{}{Lernbereich \\ \scriptsize (Sprechen, Grammatik, \\ \scriptsize Lesen, \dots{})} & Thema & Material & \LARGE\color{green}\checkmark \\
\hline
\replicate{21}{\therowcount\stepcounter{rowcount} & & & & &\\ \hline} % add numbered rows & lines
\hline
\end{NiceTabular}
\end{document}