From 262baee0a3840502dd70b855c68bb8b4359e4b2c Mon Sep 17 00:00:00 2001 From: Wolfgang Date: Sat, 30 Nov 2024 13:38:31 +0100 Subject: [PATCH] more config options and descriptions --- README.md | 11 ++++++---- logsheet.tex | 59 ++++++++++++++++++++++++++++------------------------ 2 files changed, 39 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 720dcc5..bdd8137 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,9 @@ enumerated with the number as watermark. See [sample pdf](../../../raw/branch/main/sample/logsheet.DL1XXXX.pdf) -Your callsign can be a watermark across the background. If the sheet is for -trainee logging, there will be "Location+OP" in the heading. +Your callsign can be a watermark across the background. Font size is calculated +automatically. If the sheet is for trainee logging, there will be "Location+OP" +in the heading. ## Setup @@ -28,12 +29,14 @@ Of course you can use your own method of using LaTeX. * Config callsign via filename: * logsheet.DL1XXXX.tex will use callsign DL1XXXX * logsheet.DN1XXXX.trainee.tex will use callsign DN1XXXX and set Location+OP - in heading (for trainee callsign) + in heading (for trainee callsign) * logsheet.DL1XXXX.tex will use callsign DL1XXXX/t and set Location+OP in heading (for new (2024) german trainee callsign) * Configuration in the first section of logsheet.tex possible: * paper format - * number of logging blocks on each page + * number of blocks on each page + * number of pages + * page layout ## Build With the build system: **make pdf** diff --git a/logsheet.tex b/logsheet.tex index 00e293b..a6345ba 100644 --- a/logsheet.tex +++ b/logsheet.tex @@ -3,6 +3,9 @@ % can do whatever you want with this stuff. If we meet some day, and you think % this stuff is worth it, you can buy me a beer in return. +% needed because pgf also loads xcolor with different options +\PassOptionsToPackage{svgnames}{xcolor} + \documentclass[12pt]{article} % @@ -13,10 +16,19 @@ \newlength{\rowheight} % configure height of lines \setlength{\rowheight}{9mm} -% configure number of tables on each page +% configure number of table blocks on each page \def\numtables{2} % margins of paper defined above \usepackage[\paper, hmargin=0.7cm, vmargin=0.9cm]{geometry} +% layout of pages (with pgfmorepages) +% valid settings e. g. 2 on 1, 4 on 1, 6 on 1, 8 on 1, 16 on 1 +\usepackage{pgfmorepages} +\pgfpagesuselayout{2 on 1}[\paper, landscape] + +% how many pages (duplex printing with \pgflayout 2 on 1 can fit 4 pages +% but maybe more numerated pages are needed +% you may run out of memory for latex, maybe try lualatex +\def\numpages{4} % define callsign here or with filename % e. g. \def\callsign{AB1CD} % if you define it here, callsign will not be taken from filename @@ -90,7 +102,7 @@ % pagenumber as watermark \FPeval\wmfontscalepagenumber{0.75*wmfontscale} -\usepackage[svgnames]{xcolor} +\usepackage{xcolor} \usepackage{eso-pic} \usepackage{tikz} \usetikzlibrary{calc} @@ -113,10 +125,6 @@ } } -% Duplicate page: e. g. two a5 on one a4 -\usepackage{pgfmorepages} -\pgfpagesuselayout{2 on 1}[\paper,landscape] - \pagestyle{empty} \setlength\parindent{0pt} @@ -166,29 +174,26 @@ \ttfamily \SetTblrInner{rowsep=0pt,rulesep=0pt} % two sides (front/back) -\foreach \i in {1,2} +\foreach \i in {1,...,\numpages} { - % two pages (left/right) - \foreach \j in {1,2} - { - % watermark on every side - \wmpagenumber - \begin{center} + \message{page \i} + % watermark on every page + \wmpagenumber + \begin{center} % fix centering - \addtolength{\leftskip} {-2cm} - \addtolength{\rightskip}{-2cm} + \addtolength{\leftskip} {-2cm} + \addtolength{\rightskip}{-2cm} - \begin{tblr}[evaluate=\makerows]{ - rows={\rowheight}, - width=\textwidth, - vline{1-Y}={}, - hline{2-Z}={}, - colspec={YYYYZ Q[colsep=0pt]} - } - \makerows{\tablelines}{\numtables} - \end{tblr} - \end{center} - \newpage - } + \begin{tblr}[evaluate=\makerows]{ + rows={\rowheight}, + width=\textwidth, + vline{1-Y}={}, + hline{2-Z}={}, + colspec={YYYYZ Q[colsep=0pt]} + } + \makerows{\tablelines}{\numtables} + \end{tblr} + \end{center} + \newpage } \end{document}