0

I want to make a teacher's lesson planning book. (You know the story: I've never found one I liked, so I want to make my own.) To do this, I need a planning grid that spans a two-page spread, with the days of the week labeled across the top; and I need forty such spreads, one for each week of the school calendar. So far I have this:

\documentclass{memoir}
\usepackage[paperwidth=17in,paperheight=11in,left=0pt,right=0pt,top=1cm,bottom=1cm]{geometry}
\usepackage{forloop}
\usepackage{tabularx}
\usepackage{changepage}

\newcommand{\aline}{\\\hline &&&&&&\rule{0cm}{5cm}}



\begin{document}

\pagenumbering{gobble}

\newcounter{theyflines}

\begin{adjustwidth}{2in}{}

    Week of \makebox[1in]{\dotfill} to \makebox[1in]{\dotfill}

\end{adjustwidth}

\vspace{5mm}

\noindent \begin{tabularx}{\paperwidth}{p{2cm}|p{5cm}|X|X|X|X|X}
\hline
Course & Weekly goal & Monday & Tuesday & Wednesday & Thursday & Friday
\forloop{theyflines}{1}{\value{theyflines} < 5}{\aline}\\
\hline
&&&&&&\rule{0cm}{2cm}\\
\hline

\end{tabularx}

\end{document}

That gets me a grid that spans two pages. How do I turn that into a planning book? I see at least two sub-questions:

  1. How do I split the grid into two letter-size pages, so that I can give the copy shop a PDF of a letter-size book to print? (I did find this answer, but I thought it might be overkill to put the table into an image and then split the image. Or is that the best solution?)
  2. Is there a better way to build the whole book than copy-pasting the grid forty times? I could use another forloop, but won't that mess up the page division I need in item 1?
crmdgn
  • 2,628

1 Answers1

1

This solution creates a double page savebox and uses adjustbox to show only half of it at a time. To get an even number of columns per page, I needed to compute the width for the second column, which required computing the width of the X columns, which made tabularx redundant.

\documentclass[letter]{memoir}
\usepackage[left=0pt,right=0pt,top=1cm,bottom=1cm]{geometry}
\usepackage{forloop}
\usepackage{adjustbox}

\newcommand{\aline}{\\\hline &&&&&&\rule{0cm}{5cm}}
\newcounter{theyflines}
\pagestyle{empty}
\parindent=0pt

\newsavebox{\tempbox}
\newlength{\pwidth}
\newlength{\spwidth}

\setlength{\pwidth}{\dimexpr \textwidth-6\tabcolsep-4\arrayrulewidth}%
\divide\pwidth by 3
\setlength{\spwidth}{\dimexpr \pwidth-2cm-2\tabcolsep-\arrayrulewidth}%

\savebox{\tempbox}{% fit 3 columns into \textwidth
\begin{tabular}{p{2cm}|p{\spwidth}|p{\pwidth}|p{\pwidth}|p{\pwidth}|p{\pwidth}|p{\pwidth}|}
\hline
Course & Weekly goal & Monday & Tuesday & Wednesday & Thursday & Friday
\forloop{theyflines}{1}{\value{theyflines} < 5}{\aline}\\
\hline
&&&&&&\rule{0cm}{2cm}\\
\hline
\end{tabular}}

\begin{document}
\hspace{2cm}Week of \makebox[1in]{\dotfill} to \makebox[1in]{\dotfill}\par
\vspace{\fill}%
\adjustbox{clip=true,trim=0pt 0pt {\textwidth} 0pt}{\usebox\tempbox}

\pagebreak\vspace*{\fill}%
\adjustbox{clip=true,trim={\textwidth} 0pt 0pt 0pt}{\usebox\tempbox}

\end{document}
John Kormylo
  • 79,712
  • 3
  • 50
  • 120
  • Would you suggest a forloop to create the entire 40-wk sequence? Or something else? – crmdgn Apr 22 '19 at 13:20
  • 1
    It depends on what you were planning to put inside the tabulars, if anything. If you plan to leave them blank, just repeat the \usebox for each page, possibly using a separate loop. – John Kormylo Apr 22 '19 at 15:35