如何创建水平框布局?

如何创建水平框布局?

我正在尝试为自己创建一个看起来像这样的日程计划表。

时间表模板

任务模板

我现在的版本

\documentclass[a5paper]{article}
\usepackage[a5paper, portrait, margin=0.5cm]{geometry}
\usepackage{multirow}
\usepackage{tabularx}
\usepackage[table, svgnames]{xcolor}
\newcommand{\grayline}{\arrayrulecolor{lightgray}\cline{1-5}\arrayrulecolor{white}}
\begin{document}
\pagecolor{black}
\color{white}
\setlength{\extrarowheight}{10pt}
\noindent
\begin{tabularx}{\linewidth}{c|X|X|X|X|}
    \cline{1-5}
    \multicolumn{5} {r|} {Date: 2021|\hspace{0.5cm}|\hspace{0.5cm}|}\\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
    \hspace{0.5cm} & & & & \\
    \grayline
    \hspace{0.5cm} & & & & \\
    \hline
\end{tabularx}
Reflections:
\begin{tabularx}{\linewidth}{l|l}
 TASKS: \hspace{5cm} & IDEAS: \hspace{5cm} \\ 
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
 \hspace{5cm} & \hspace{5cm} \\
 \cline{1-2}
    
\end{tabularx}

\end{document}

最终目标是将这两张 A5 页面并排堆叠在一张 A4 页面中。

答案1

您可能对以下基于的方法感兴趣minipage

在以下示例中,我还删除了所有\hspace命令,而是使用固定或灵活宽度的列来实现类似的布局。我没有一遍又一遍地重复表格中的空行,而是使用了循环(灵感来自https://tex.stackexchange.com/a/50299/134144

\documentclass{article}
\usepackage[landscape, margin=0.5cm]{geometry}
\usepackage{tabularx}
\usepackage[table, svgnames]{xcolor}
\newcommand{\grayline}{\arrayrulecolor{lightgray}\cline{1-5}\arrayrulecolor{white}}

\begin{document}

\pagecolor{black}
\color{white}
\setlength{\extrarowheight}{10pt}

\begin{minipage}[b]{0.475\linewidth}
\newcounter{rownumber}
\setcounter{rownumber}{0}
\def\fillfirsttable{}%
\loop\ifnum\therownumber<12
  \addtocounter{rownumber}{1}
  \expandafter\def\expandafter\fillfirsttable\expandafter{%
    \fillfirsttable
     & & & & \\
    \hline
     & & & & \\
    \grayline
  }%
\repeat
\noindent
\begin{tabularx}{\linewidth}{wc{0.5cm}|X|X|X|X|}
    \cline{1-5}
    \multicolumn{5} {r|} {Date: 2021|\hspace{0.5cm}|\hspace{0.5cm}|}\\
    \hline
    \fillfirsttable
\end{tabularx}
\end{minipage}
\hfill
\begin{minipage}[b]{0.475\linewidth}
Reflections:

\setcounter{rownumber}{0}
\def\fillsecondtable{}%
\loop\ifnum\therownumber<20
  \addtocounter{rownumber}{1}
  \expandafter\def\expandafter\fillsecondtable\expandafter{%
    \fillsecondtable
     & \\ \hline
  }%
\repeat
\noindent
\begin{tabularx}{\linewidth}{X|X}
 TASKS: & IDEAS:  \\ \hline
 \fillsecondtable
\end{tabularx}
\end{minipage}

\end{document}

相关内容