% !TEX root = ../../../Main.tex % Suppress all warnings; Only show errors \usepackage{silence} \WarningsOff* % If not using XeTeX, print an error message and stop compiling \ifx\XeTeXversion\undefined \PackageError{HSRTReport}{This class can only be used with XeLaTeX.}{} \stop \fi %---------------------------------------- % PATHS %---------------------------------------- \def\fontsPath{TeX/Assets/Fonts} \def\imagesPath{TeX/Assets/Images} \def\classPath{TeX/Classes/HSRTReport} %---------------------------------------- % CLASS DEFINITION AND PARAMETERS %---------------------------------------- % Original: ZHAWReport.cls by Martin Oswald \NeedsTeXFormat{LaTeX2e} \newcommand{\classname}{TeX/Classes/HSRTReport/HSRTReport} \ProvidesClass{\classname}[2024/07/08 HSRT Report Class] \providecommand{\baseclass}{scrreprt} % Default options \PassOptionsToClass{pointlessnumbers}{\baseclass} % Forward options to the base class \DeclareOption*{\PassOptionsToClass{\CurrentOption}{\baseclass}} \ProcessOptions\relax % Load the base class with options \LoadClass{\baseclass} %---------------------------------------- % REQUIRED PACKAGES %---------------------------------------- \RequirePackage[ngerman]{babel} \RequirePackage{lmodern} \RequirePackage{amsmath} \RequirePackage{graphicx} \RequirePackage{svg} \RequirePackage[T1]{fontenc} \RequirePackage{fontspec} \RequirePackage{tikz} \RequirePackage{fancyhdr} \RequirePackage{bophook} \RequirePackage{ifthen} %---------------------------------------- % REFS %---------------------------------------- \RequirePackage{hyperref} \hypersetup{ pdfpagemode={UseOutlines}, bookmarksopen=true, bookmarksopenlevel=0, hypertexnames=false, colorlinks=true, citecolor=[rgb]{0.286, 0.427, 0.537}, linkcolor=[rgb]{0.161, 0.31, 0.427}, urlcolor=[rgb]{0.071, 0.212, 0.322}, pdfstartview={FitV}, unicode, breaklinks=true } %---------------------------------------- % FONT SETUP %---------------------------------------- \renewcommand*\rmdefault{lmr} \renewcommand*\sfdefault{lmss} \newfontfamily\blenderfont[ Path=\fontsPath/Blender/, Extension=.ttf, UprightFont=*-Medium, BoldFont=*-Bold, ItalicFont=*-MediumItalic, BoldItalicFont=*-BoldItalic ]{Blender} \newfontfamily\dinfont[ Path=\fontsPath/DIN/, Extension=.ttf, UprightFont=*-Regular, BoldFont=*-Bold, ItalicFont=*-Italic, BoldItalicFont=*-BoldItalic ]{DIN} \setsansfont{Blender}[ Path=\fontsPath/Blender/, Extension=.ttf, UprightFont=*-Medium, BoldFont=*-Bold, ItalicFont=*-MediumItalic, BoldItalicFont=*-BoldItalic ] \setmainfont{DIN}[ Path=\fontsPath/DIN/, Extension=.ttf, UprightFont=*-Regular, BoldFont=*-Bold, ItalicFont=*-Italic, BoldItalicFont=*-BoldItalic ] %---------------------------------------- % PAGE SETUP %---------------------------------------- \pagestyle{fancy} \renewcommand{\headrulewidth}{0pt} %---------------------------------------- % LOGOS %---------------------------------------- % ==== Add more logos to be placed besides the main logo on the title page ==== \newcommand{\titlePageLogosArray}{} \newcommand{\footerLogosArray}{} \newcommand{\logosScale}{1} \newcommand{\mainLogoScale}{1} \newlength{\imageHeight} \newcounter{logoCounter} \setcounter{logoCounter}{1} \DeclareRobustCommand{\SetLogosScale}[1]{ \renewcommand{\logosScale}{#1} } \DeclareRobustCommand{\AddLogo}[5]{ \appto{\titlePageLogosArray}{ \node[anchor=west, xshift=0.5cm] (logo#4) at (logo#5.east) { \setlength{\imageHeight}{1.5cm*\real{#2}*\real{\logosScale}} \StrBehind{#1}{.}[\fileExtension] \strcompare{\fileExtension}{svg}{ \includesvg[height=\imageHeight]{#1} }{ \includegraphics[height=\imageHeight]{#1} } }; \filldraw[white, opacity=#3] (logo#4.north east) rectangle (logo#4.south west); } \appto{\footerLogosArray}{ \node[anchor=east, xshift=-0.1cm] (logo#4) at (logo#5.west) { \setlength{\imageHeight}{1.5cm*\real{#2}*\real{0.55}*\real{\logosScale}} \StrBehind{#1}{.}[\fileExtension] \strcompare{\thepage}{1}{}{ \strcompare{\fileExtension}{svg}{ \includesvg[height=\imageHeight]{#1} }{ \includegraphics[height=\imageHeight]{#1} } } }; \filldraw[white, opacity=#3] (logo#4.north east) rectangle (logo#4.south west); } } \DeclareRobustCommand{\SetupTitlePageLogos}{ \titlePageLogosArray } \DeclareRobustCommand{\SetupFooterLogos}{ \footerLogosArray } % ============================================================================= \def\skylinePath{TeX/Assets/Images/Skyline.svg} \newcommand{\footerYShift}{0.7em} \newcommand{\footerXShift}{0.7em} % Define the logo and its position \AtBeginPage{ \setlength{\imageHeight}{2cm*\real{\mainLogoScale}*\real{\logosScale}*\real{0.45}} \begin{tikzpicture}[overlay, remember picture] \node[anchor=south east, inner sep=0pt, xshift=-\footerXShift, yshift=\footerYShift] (logo0) at (current page.south east) { \strcompare{\thepage}{1}{}{ \includesvg[height=\imageHeight]{\imagesPath/DUMMY_FOOT.svg} } }; \SetupFooterLogos \node[anchor=south west, inner sep=0pt, yshift=0em] at (current page.south west) { \includesvg[width=1.5\paperwidth]{\skylinePath} }; \filldraw[white] (logo0.north east) rectangle (logo0.south west); \end{tikzpicture} } %---------------------------------------- % TITLE PAGE %---------------------------------------- \setkomafont{pagenumber}{\color{gray}\blenderfont\selectfont} \fancyhf{} \fancyhead[L]{\color{gray}\blenderfont \@title} \fancyhead[R]{\pagemark} \fancyfoot[C]{} \fancypagestyle{fancy}{ \fancyhf{} \fancyhead[L]{\color{gray}\blenderfont \@title} \fancyhead[R]{\pagemark} \fancyfoot[C]{} } % Set font for all headings \setkomafont{disposition}{\sffamily\bfseries} \setkomafont{chapter}{\Large\sffamily\bfseries} \setkomafont{section}{\Large\sffamily\bfseries} \setkomafont{subsection}{\large\sffamily\bfseries} \setkomafont{subsubsection}{\large\sffamily\bfseries} \RedeclareSectionCommand[ beforeskip=1ex, afterskip=0.5ex, style=section ]{chapter} \RedeclareSectionCommands[ beforeskip=0.6ex, afterskip=0.3ex, ]{section,subsection,subsubsection} \newcommand{\decoRule}{\rule{.8\textwidth}{.4pt}} \input{\classPath/Pages/Titlepage.tex} %---------------------------------------- % TABLE OF CONTENTS %---------------------------------------- %\usepackage{tocloft} %\renewcommand{\cftpartleader}{\cftdotfill{\cftdotsep}} % for parts %\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}} % for chapters % Set Chapter font size in TOC %\renewcommand{\cftchapfont}{\sffamily\bfseries\large}