refactor(latex): reorganize config modules without breaking logos

This commit is contained in:
Frederik Beimgraben 2025-10-29 22:50:02 +01:00
parent b94d559367
commit c07930185c
9 changed files with 339 additions and 2 deletions

52
Content/00_toc.tex Normal file
View File

@ -0,0 +1,52 @@
% !TEX root = ../Main.tex
% ==== TOC =====
{
\newpage
\blenderfont
\vspace*{-5.5em}
\tableofcontents
}
\vspace{\fill}
% ==== List of Figures ====
\newpage
{
\noindent
\blenderfont
\vspace*{-6em}
\listoffigures
}
% ==== List of Tables ====
{
\noindent
\blenderfont
\listoftables
}
% ==== List of Equations ====
{
\noindent
\blenderfont
\listofmyequations
}
% ==== Glossary =====
{
\noindent
\blenderfont
{
\renewcommand*{\entryname}{Wort}
\newpage
\vspace*{-2.25em}
\printglossary
}
{
\renewcommand*{\entryname}{Abkürzung}
\newpage
\vspace*{-2.25em}
\printglossary[type=\acronymtype]
}
}

View File

@ -0,0 +1,3 @@
% !TEX root = ../Main.tex
\newpage
\printbibliography

View File

@ -0,0 +1,71 @@
% !TEX root = ../../HSRTReport.cls
% ==============================================================================
% Fonts Configuration Module
% ==============================================================================
% Description: Font families and typography setup for the HSRTReport class
% Author: Frederik Beimgraben
% License: Creative Commons CC BY 4.0
% ==============================================================================
% ==============================================================================
% Default Font Families
% ==============================================================================
% Set default Roman and Sans Serif families
\renewcommand*\rmdefault{lmr} % Latin Modern Roman
\renewcommand*\sfdefault{lmss} % Latin Modern Sans Serif
% ==============================================================================
% Color Definitions
% ==============================================================================
% Define custom colors for typography
\definecolor{midnightblue}{rgb}{0.094, 0.051, 0.228}
% ==============================================================================
% Custom Font Families
% ==============================================================================
% Blender font family for headings and special text
\newfontfamily\blenderfont[
Path=\fontsPath/Blender/,
Extension=.ttf,
UprightFont=*-Medium,
BoldFont=*-Bold,
ItalicFont=*-MediumItalic,
BoldItalicFont=*-BoldItalic
]{Blender}
% DIN font family for body text
\newfontfamily\dinfont[
Path=\fontsPath/DIN/,
Extension=.ttf,
UprightFont=*-Regular,
BoldFont=*-Bold,
ItalicFont=*-Italic,
BoldItalicFont=*-BoldItalic
]{DIN}
% ==============================================================================
% Main Document Fonts
% ==============================================================================
% Set sans serif font (used for headings)
\setsansfont{Blender}[
Path=\fontsPath/Blender/,
Extension=.ttf,
UprightFont=*-Medium,
BoldFont=*-Bold,
ItalicFont=*-MediumItalic,
BoldItalicFont=*-BoldItalic
]
% Set main font (used for body text)
\setmainfont{DIN}[
Path=\fontsPath/DIN/,
Extension=.ttf,
UprightFont=*-Regular,
BoldFont=*-Bold,
ItalicFont=*-Italic,
BoldItalicFont=*-BoldItalic
]
% ==============================================================================
% End of Fonts Configuration Module
% ==============================================================================

View File

@ -0,0 +1,51 @@
%!TEX root = ../../Main.tex
\makeglossaries
\newcolumntype{L}[1]{>{\raggedright\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newcolumntype{C}[1]{>{\centering\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newcolumntype{R}[1]{>{\raggedleft\let\newline\\\arraybackslash\hspace{0pt}}p{#1}}
\newglossarystyle{manualfixedwidth}{
\setglossarystyle{long3colheader}
\renewenvironment{theglossary}
{\begin{longtable}{
@{}
L{0.30\textwidth-\tabcolsep}
p{0.58\textwidth-\tabcolsep}
R{0.10\textwidth-\tabcolsep}
@{}
}}
{\end{longtable}}
\renewcommand*{\glsgroupskip}{}
\renewcommand{\arraystretch}{1.1}
}
\setglossarystyle{manualfixedwidth}
\renewcommand*{\entryname}{Wort/Abkürzung}
\renewcommand*{\descriptionname}{Bedeutung}
\renewcommand*{\pagelistname}{Seite(n)}
\glsenablehyper
\renewcommand*{\glsclearpage}{}
\renewcommand{\acronymname}{Abkürzungsverzeichnis}
%%% https://golatex.de/viewtopic.php?t=23348
% masculine genitive
\glsaddkey
{genitive}% key
{}% default value
{\glsentrygenitive}% no link cs
{\Glsentrygenitive}% no link ucfirst cs
{\glsgen}% link cs
{\Glsgen}% link ucfirst cs
{\GLSgen}% link all caps cs
% dative
\glsaddkey
{dative}% key
{}% default value
{\glsentrydative}% no link cs
{\Glsentrydative}% no link ucfirst cs
{\glsdative}% link cs
{\Glsdative}% link ucfirst cs
{\GLSdative}% link all caps cs

View File

@ -0,0 +1,48 @@
% !TEX root = ../../HSRTReport.cls
% ==============================================================================
% Page Setup Module
% ==============================================================================
% Description: Page layout configuration including headers, footers, and styling
% Author: Frederik Beimgraben
% License: Creative Commons CC BY 4.0
% ==============================================================================
% ==============================================================================
% Page Style Configuration
% ==============================================================================
% Use fancy page style for headers and footers
\pagestyle{fancy}
% Remove default header rule
\renewcommand{\headrulewidth}{0pt}
% ==============================================================================
% Header and Footer Setup
% ==============================================================================
% Set page number font style
\setkomafont{pagenumber}{\color{gray}\blenderfont\selectfont}
% Clear all header and footer fields
\fancyhf{}
% Configure header
\fancyhead[L]{\color{gray}\blenderfont \@title} % Document title on left
\fancyhead[R]{\pagemark} % Page number on right
% Clear footer
\fancyfoot[C]{}
% ==============================================================================
% Fancy Page Style Definition
% ==============================================================================
% Define the fancy page style explicitly
\fancypagestyle{fancy}{
\fancyhf{}
\fancyhead[L]{\color{gray}\blenderfont \@title}
\fancyhead[R]{\pagemark}
\fancyfoot[C]{}
}
% ==============================================================================
% End of Page Setup Module
% ==============================================================================

View File

@ -0,0 +1,54 @@
% !TEX root = ../../HSRTReport.cls
% ==============================================================================
% Sections Configuration Module
% ==============================================================================
% Description: Section formatting and styling for chapters, sections, subsections
% Author: Frederik Beimgraben
% License: Creative Commons CC BY 4.0
% ==============================================================================
% ==============================================================================
% Section Font Configuration
% ==============================================================================
% Set font for all sectioning commands (disposition)
\setkomafont{disposition}{\blenderfont\bfseries}
% Configure individual section level fonts
\setkomafont{chapter}{\Large\blenderfont\bfseries}
\setkomafont{section}{\Large\blenderfont\bfseries}
\setkomafont{subsection}{\large\blenderfont\bfseries}
\setkomafont{subsubsection}{\large\blenderfont\bfseries}
% ==============================================================================
% Section Spacing Configuration
% ==============================================================================
% Redefine chapter spacing
\RedeclareSectionCommand[
beforeskip=1ex, % Space before chapter
afterskip=0.5ex, % Space after chapter
style=section % Use section style
]{chapter}
% Redefine spacing for sections, subsections, and subsubsections
\RedeclareSectionCommands[
beforeskip=0.6ex, % Space before section
afterskip=0.3ex, % Space after section
]{section,subsection,subsubsection}
% ==============================================================================
% Decorative Elements
% ==============================================================================
% Decorative rule for visual separation
\newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}}
% ==============================================================================
% Counter Configuration
% ==============================================================================
% Remove chapter dependency from figure, table, and equation counters
\counterwithout{figure}{chapter}
\counterwithout{table}{chapter}
\counterwithout{equation}{chapter}
% ==============================================================================
% End of Sections Configuration Module
% ==============================================================================

56
HSRTReport/Config/ToC.tex Normal file
View File

@ -0,0 +1,56 @@
% !TEX root = ../../HSRTReport.cls
% ==============================================================================
% Table of Contents Configuration Module
% ==============================================================================
% Description: Formatting for table of contents, list of figures, and list of tables
% Author: Frederik Beimgraben
% License: Creative Commons CC BY 4.0
% ==============================================================================
% ==============================================================================
% Page Number Formatting in TOC
% ==============================================================================
% Configure page number font for different section levels
\renewcommand\cftchappagefont{\blenderfont\color{gray}}
\renewcommand\cftsecpagefont{\blenderfont\color{gray}}
\renewcommand\cftsubsecpagefont{\blenderfont\color{gray}}
\renewcommand\cftsubsubsecpagefont{\blenderfont\color{gray}}
% ==============================================================================
% Entry Title Formatting in TOC
% ==============================================================================
% Configure entry title font for different section levels
\renewcommand\cftchapfont{\blenderfont\color{gray}}
\renewcommand\cftsecfont{\blenderfont\color{gray}}
\renewcommand\cftsubsecfont{\blenderfont\color{gray}}
\renewcommand\cftsubsubsecfont{\blenderfont\color{gray}}
% ==============================================================================
% Section Command TOC Formatting
% ==============================================================================
% Configure TOC entry and page number format for sections and subsections
\RedeclareSectionCommands[
tocentryformat=\blenderfont\normalsize,
tocpagenumberformat=\blenderfont\normalsize
]{section,subsection}
% ==============================================================================
% Figure and Table TOC Formatting
% ==============================================================================
% Configure font for figure entries in list of figures
\renewcommand\cftfigfont{\blenderfont\color{gray}}
\renewcommand\cftfigpagefont{\blenderfont\color{gray}}
% Configure font for table entries in list of tables
\renewcommand\cfttabfont{\blenderfont\color{gray}}
\renewcommand\cfttabpagefont{\blenderfont\color{gray}}
% ==============================================================================
% Dot Separation Configuration
% ==============================================================================
% Set spacing between dots in TOC
\renewcommand{\cftdotsep}{1.5}
% ==============================================================================
% End of Table of Contents Configuration Module
% ==============================================================================

View File

@ -335,17 +335,19 @@
% ---------------------------------------- % ----------------------------------------
\input{\classPath/Pages/Titlepage.tex} \input{\classPath/Pages/Titlepage.tex}
% ==== Configuration Modules ====
\input{\classPath/Config/GlossarySettings}
\input{\classPath/Config/ToC}
% ==== Content Modules ==== % ==== Content Modules ====
\input{\classPath/Modules/Content/Listings} \input{\classPath/Modules/Content/Listings}
\input{\classPath/Modules/Content/Floats} \input{\classPath/Modules/Content/Floats}
\input{\classPath/Modules/Content/GlossarySettings}
% ==== Layout Modules ==== % ==== Layout Modules ====
\input{\classPath/Modules/Layout/InfoBlocks} \input{\classPath/Modules/Layout/InfoBlocks}
\input{\classPath/Modules/Layout/Watermark} \input{\classPath/Modules/Layout/Watermark}
% ==== Formatting Modules ==== % ==== Formatting Modules ====
\input{\classPath/Modules/Formatting/ToC}
\input{\classPath/Modules/Formatting/Typography} \input{\classPath/Modules/Formatting/Typography}
% ==== Tool Modules ==== % ==== Tool Modules ====

BIN
Main.pdf

Binary file not shown.