Add LaTeX templates for 200km brevet cards with front and back sides. Includes Docker-based build system and documentation. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
219 lines
3.8 KiB
TeX
219 lines
3.8 KiB
TeX
\documentclass[a4paper,10pt,landscape]{article}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage[landscape,top=0.8cm,bottom=0.8cm,left=0.8cm,right=0.8cm]{geometry}
|
|
\usepackage{array}
|
|
\usepackage{helvet}
|
|
|
|
% Set sans-serif font as default
|
|
\renewcommand{\familydefault}{\sfdefault}
|
|
|
|
\setlength{\parindent}{0pt}
|
|
\setlength{\tabcolsep}{3pt}
|
|
\pagestyle{empty}
|
|
|
|
% A4 landscape height: 21cm
|
|
% Half height: 10.5cm from top of page
|
|
% Top margin: 0.8cm
|
|
% Row 4 should start at: 10.5 - 0.8 = 9.7cm from start of content
|
|
%
|
|
% Front side: each card is 8.5cm tall
|
|
% So rows 1-3 should be: 8.5cm total (2.833cm each)
|
|
% Gap after row 3: 9.7 - 8.5 = 1.2cm
|
|
|
|
\newcommand{\rowheight}{2.833cm}
|
|
|
|
\begin{document}
|
|
|
|
% Upper card table (rows 1-3)
|
|
\noindent
|
|
\begin{tabular}{|p{6.6cm}|p{6.6cm}|p{6.6cm}|p{6.6cm}|}
|
|
\hline
|
|
% Row 1 (Upper card) - height 2.833cm
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 1:} Km 0 - Unisport\\
|
|
Nachtigallenweg 86, Bonn\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 7:30\\
|
|
bis: 8:30
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 4:} Km 165 Mahlberg Ecke K50,\\
|
|
Breitestraße\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 13:21\\
|
|
bis: 19:30
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Kontrollfrage:}\\
|
|
Wann wurde das Kriegerdenkmal\\
|
|
eingerichtet?
|
|
}
|
|
\\
|
|
\hline
|
|
|
|
% Row 2 (Upper card) - height 2.833cm
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 2:} Km 57 -- „Nationalpark-Tor" im\\
|
|
alten Bahnhofsgebäude, Heimbach\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 9:11\\
|
|
bis: 12:21
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 5:} Km 205 - Unisport\\
|
|
Nachtigallenweg 86, Bonn\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 13:23\\
|
|
bis: 21:00
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
\\
|
|
\hline
|
|
|
|
% Row 3 (Upper card) - height 2.833cm
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 3:} Km 100 - Friterie „Au Petit\\
|
|
Creux" oder Total-Tankstelle, Ecke Rue\\
|
|
de Botrange/Rue de Charmilles, Waimes\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 11:26\\
|
|
bis: 15:10
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
\\
|
|
\hline
|
|
\end{tabular}
|
|
|
|
\vspace{1.8cm}
|
|
|
|
% Lower card table (rows 4-6)
|
|
\noindent
|
|
\begin{tabular}{|p{6.6cm}|p{6.6cm}|p{6.6cm}|p{6.6cm}|}
|
|
\hline
|
|
% Row 1 (Lower card)
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 1:} Km 0 - Unisport\\
|
|
Nachtigallenweg 86, Bonn\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 7:30\\
|
|
bis: 8:30
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 4:} Km 165 Mahlberg Ecke K50,\\
|
|
Breitestraße\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 13:21\\
|
|
bis: 19:30
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Kontrollfrage:}\\
|
|
Wann wurde das Kriegerdenkmal\\
|
|
eingerichtet?
|
|
}
|
|
\\
|
|
\hline
|
|
|
|
% Row 2 (Lower card) - height 2.833cm
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 2:} Km 57 -- „Nationalpark-Tor" im\\
|
|
alten Bahnhofsgebäude, Heimbach\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 9:11\\
|
|
bis: 12:21
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 5:} Km 214 - Unisport\\
|
|
Nachtigallenweg 86, Bonn\\
|
|
\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 13:23\\
|
|
bis: 21:00
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
\\
|
|
\hline
|
|
|
|
% Row 3 (Lower card) - height 2.833cm
|
|
\parbox[c][\rowheight][t]{6.5cm}{%
|
|
\vspace{2mm}
|
|
\textbf{Nr. 3:} Km 100 - Friterie „Au Petit\\
|
|
Creux" oder Total-Tankstelle, Ecke Rue\\
|
|
de Botrange/Rue de Charmilles, Waimes\\
|
|
\textbf{Kontrollzeit}\\
|
|
von: 11:26\\
|
|
bis: 15:10
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty for stamps
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
&
|
|
\parbox[c][\rowheight][c]{6.5cm}{%
|
|
% Empty
|
|
}
|
|
\\
|
|
\hline
|
|
\end{tabular}
|
|
|
|
\end{document}
|