From d4137daca6cb8278dde15aa825dc6d5fafacd621 Mon Sep 17 00:00:00 2001 From: nobody Date: Sat, 16 Nov 2024 05:45:38 +0100 Subject: [PATCH] use Recursive --- calibrate.tex | 40 ++++++++++++++++++++++++++++++++++ cccbform.cls | 53 +++++++++++++++++++++++++++++++++++++++++---- mitgliedsantrag.tex | 22 ++++++++++++------- 3 files changed, 103 insertions(+), 12 deletions(-) create mode 100644 calibrate.tex diff --git a/calibrate.tex b/calibrate.tex new file mode 100644 index 0000000..0ffc97c --- /dev/null +++ b/calibrate.tex @@ -0,0 +1,40 @@ +\documentclass[border=10pt]{standalone} +\usepackage{tikz} +\usepackage{fontspec} + +\begin{document} +\begin{tikzpicture} + +% Define dimensions +\def\boxsize{1.5} % 1cm box size +\def\gap{0.5} % 0.5mm gap between boxes +\setmainfont{Ubuntu} +\def\labelsize{7} % Size for the labels +\pgfmathsetmacro{\gridsize}{(\boxsize + \gap)} + +% Create 10x10 grid of boxes +\foreach \row in {0,...,9} { + \foreach \col in {0,...,9} { + % Calculate gray value (0 to 99) + \pgfmathsetmacro{\grayval}{(100 - (\row * 10 + \col))} + \pgfmathsetmacro{\grayscale}{(\grayval/100)} + \pgfmathsetmacro{\graylabelraw}{1-\grayscale} + \pgfmathprintnumberto[fixed,zerofill,precision=2,assume math mode]{\graylabelraw}{\graylabel} + + % Calculate position + \pgfmathsetmacro{\x}{\col * \gridsize} + \pgfmathsetmacro{\y}{9 - \row * \gridsize} % Invert Y to start from top + + % Draw box using proper grayscale + \draw [fill=black!\grayval] + (\x, \y) rectangle ++ (\boxsize, -\boxsize); + + % Add label (white text for dark boxes, black for light ones) + \pgfmathsetmacro{\textcolor}{ifthenelse(\grayval > 50, "white", "black")} + \node[text=\textcolor] at (\x + 0.5*\boxsize, \y-0.2*\boxsize) + {\fontsize{\labelsize}{\labelsize}\selectfont\graylabel}; + } +} + +\end{tikzpicture} +\end{document} diff --git a/cccbform.cls b/cccbform.cls index c7a734e..f25c1a9 100644 --- a/cccbform.cls +++ b/cccbform.cls @@ -16,9 +16,54 @@ \geometry{a4paper, margin=1.5cm, inner=2.5cm} \pagestyle{empty} +\setmainfont[ + Renderer=HarfBuzz, + ItalicFont=Recursive, + BoldFont=Recursive, + BoldItalicFont=Recursive, + Scale=0.9, + UprightFeatures={ + RawFeature={+ss01,+ss02,+ss08,+case}, + RawFeature={+axis={MONO=0.2,CASL=0.2,slnt=0,CRSV=0,wght=400}} + }, + BoldFeatures={RawFeature={+axis={MONO=0.2,CASL=0.2,slnt=0,CRSV=0,wght=700}}}, + BoldItalicFeatures={RawFeature={+axis={MONO=0.2,CASL=0.2,slnt=-15,CRSV=1,wght=700}}}, + ItalicFeatures={RawFeature={+axis={MONO=0.2,CASL=0.2,slnt=-15,CRSV=1,wght=400}}} + ]{Recursive} + +\setmonofont[ + Renderer=HarfBuzz, + ItalicFont=Recursive, + BoldFont=Recursive, + BoldItalicFont=Recursive, + Scale=0.9, + UprightFeatures={ + RawFeature={+ss01,+ss02,+ss08,+case}, + RawFeature={+axis={MONO=1.0,CASL=0.2,slnt=0,CRSV=0,wght=400}} + }, + BoldFeatures={RawFeature={+axis={MONO=1.0,CASL=0.2,slnt=0,CRSV=0,wght=700}}}, + BoldItalicFeatures={RawFeature={+axis={MONO=1.0,CASL=0.2,slnt=-15,CRSV=1,wght=700}}}, + ItalicFeatures={RawFeature={+axis={MONO=1.0,CASL=0.2,slnt=-15,CRSV=1,wght=400}}} + ]{Recursive} + +\renewfontfamily\titlefont[ + Renderer=HarfBuzz, + ItalicFont=Recursive, + BoldFont=Recursive, + BoldItalicFont=Recursive, + Scale=0.9, + UprightFeatures={ + RawFeature={+ss01,+ss02,+ss08,+case}, + RawFeature={+axis={MONO=0.0,CASL=1.0,slnt=-5,CRSV=1,wght=500}} + }, + BoldFeatures={RawFeature={+axis={MONO=0.0,CASL=1.0,slnt=-5,CRSV=1,wght=800}}}, + BoldItalicFeatures={RawFeature={+axis={MONO=0.0,CASL=1.0,slnt=-15,CRSV=1,wght=800}}}, + ItalicFeatures={RawFeature={+axis={MONO=0.0,CASL=1.0,slnt=-15,CRSV=1,wght=500}}} + ]{Recursive} + % fonts % cmr: 0 / 2.502 / 1.251 / 0.834 / 2.586 / 6.0 / 0.834 || -3 -\setmainfont{Barlow} % 0 / 1.2 / 0.6 / 0.4 / 3.036 / 6.0 / 0.4 || -2 +%\setmainfont{Barlow} % 0 / 1.2 / 0.6 / 0.4 / 3.036 / 6.0 / 0.4 || -2 %\setmainfont{Monaspace Neon} % 0 / 3.72 / 1.86 / 1.24 / 3.081 / 6.0 / 1.24 || -7 %\setmainfont{Baltic Sund} % 0 / 1.476 / 0.738 / 0.492 / 3.0 / 6.0 / 0.492 || -3 %\setmainfont{Cabin Sketch} % 0 / 1.35 / 0.675 / 0.45 / 3.03 / 6.0 / 0.45 || -2 @@ -237,7 +282,7 @@ } % InlineCheckbox - just the box -\NewDocumentCommand{\InlineCheckbox}{}{\;\full@CheckBox\;} +\NewDocumentCommand{\InlineCheckbox}{}{\full@CheckBox} % CheckboxOther[width]{label} - a checkbox for a write-in option \NewDocumentCommand{\CheckboxOther}{O{0.5} m}{% @@ -349,13 +394,13 @@ \includegraphics[width=3cm]{logo.pdf}% }; \end{tikzpicture}% - \\[1cm]{\huge\bfseries #1}\\[1.5cm] + \\[1cm]{\titlefont\huge\bfseries #1}\\[1.5cm] } % AddressTitle{title} - title at the top, address, then the form below \NewDocumentCommand{\AddressTitle}{m}{ \@dinaddress - \\[1cm]\smash{{\huge\bfseries #1}}\\[4cm] + \\[1cm]\smash{{\titlefont\huge\bfseries #1}}\\[4cm] } % need to emit \Form ; hyperref generates incomplete CheckBox appearance data, diff --git a/mitgliedsantrag.tex b/mitgliedsantrag.tex index e0f0c8a..33eb06a 100644 --- a/mitgliedsantrag.tex +++ b/mitgliedsantrag.tex @@ -11,7 +11,7 @@ \begin{Indented} \Checkbox{Reguläre Mitgliedschaft (20€ pro Monat)} \Checkbox{Ermäßigte Mitgliedschaft (10€ pro Monat) -- bitte Beleg beilegen!} - \CheckboxOther[0.2]{Mitgliedschaft mit Sonderbeitrag nach Art.~6 Abs.~2 der Satzung:} + \CheckboxOther[0.17]{Mitgliedschaft mit Sonderbeitrag nach Art.~6 Abs.~2 der Satzung:} \end{Indented} \Text{Ich werde den Mitgliedsbeitrag auf das folgende Konto überweisen:} \begin{Indented} @@ -25,17 +25,23 @@ \Text{Hinweis: Die Rechtsgrundlage dieser Datenverarbeitung ist Art.~6 Abs.~1 lit.~b) DSGVO.} \ShortTextField{Ort, Datum} \Signature[Unterschrift] -\RuleSection{Bürgen} -\Text{Die folgenden Mitglieder des CCCB bekunden Interesse an der Mitgliedschaft der ausfüllenden Person:} +\RuleSection{Miss- oder Vertrauenspersonen} +\Text{Die folgenden Aktiven sind für eine Aufnahme:} \TwoColumns{ \TextField{\#1} }{ \TextField{\#2} } \RuleSection{Vorstand} -\CheckboxOther{Mitgliedsantrag abgelehnt, weil:} -\Text{Ablauf: \InlineCheckbox1.~Gesehen \InlineCheckbox2.~Verpeilt - \InlineCheckbox3.~Wiedergefunden \InlineCheckbox4.~Eingetragen - \InlineCheckbox5.~Mail gesendet.} -\Signature[Datum / Kürzel] +\TwoColumns{ + \Text{% + \InlineCheckbox~Abgelehnt\\[\formskip] + \InlineCheckbox~Verpeilt + \InlineCheckbox~Wiedergefunden\\[\formskip] + \InlineCheckbox~Eingetragen + \InlineCheckbox~Mail gesendet% + } +}{ + \Notes[Datum / Kürzel] +} \end{document}