I am trying to make a document that partially mimics the output of macOS's Calendar.app "List" print format, which looks like this:
The part I am interested in here is connecting the column separating rule to the horizontal rule. This also happens similarly at the bottom of the page.
(Note that although this looks a bit tabular, in my application, there will be varying amounts of text under each heading.)
Here is my attempt so far:
\documentclass[12pt]{article}
\usepackage[vmargin=0.5in, hmargin=0.25in, footskip=0.25in]{geometry}
\usepackage{microtype}
\usepackage{multicolrule}
\SetMCRule{width=0.4pt, line-style=solid, extend-fill, extend-top=1ex}
%\setlength{\multicolsep}{0pt}
\usepackage{lastpage}
\usepackage{fancyhdr}
\fancyhead[L,C,R]{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[L,C]{}
\fancyfoot[R]{\footnotesize Page \thepage/\pageref{LastPage}}
\renewcommand{\footrulewidth}{0.4pt}
\pagestyle{fancy}
\renewcommand{\familydefault}{\sfdefault}
\setlength{\parindent}{0pt}
\begin{document}
{\LARGE\bfseries Header}
%\rule[-2.5pt]{\textwidth}{0.4pt}
\rule{\textwidth}{0.4pt}
\begin{multicols*}{2}
{\Large\bfseries Section Head}\\\smallskip
\textbf{Some details}\\
\textbf{Location:} Other, less important details\\
more less important details\\\smallskip
\textbf{Some details}\\
\textbf{Location:} Other, less important details\\
more less important details\\\smallskip
\hspace{\fill}\rule{0.95\columnwidth}{0.4pt}\hspace{\fill}
{\Large\bfseries Second Section}\\\smallskip
etc.
\end{multicols*}
\end{document}
I have used multicolrule
's option extend-fill
to bring the colseprule to the bottom of the page and its extend-top
option to give the initial text a bit of breathing room.
I have used \rule
to create the rule at the top of the page and have experimented with different drop values to make the lines intersect, but when I started doing a binary search between 1pt
and 5pt
I decided that such an approach was too brittle.
For the bottom rule, I've tried to use fancyhdr
's foot rule, which unfortunately offers no configuration hooks other than its width. I experimented with redefining the command that typesets the rule but again found myself taking the brittle approach I rejected for the top rule.
Is there a better way to make this happen?
extend-fill
option is intended for a regularmulticols
environment and won't affectmulticols*
. If you useextend-top=2pt, extend-bot=1pt
along with the -2.5pt shift of the upper rule, it should look right, but that doesn't address your brittleness problem.