From 763750ad196925f08df0bbca48fd0f58b2be82b2 Mon Sep 17 00:00:00 2001 From: Christos Choutouridis Date: Sun, 3 Nov 2024 16:42:27 +0200 Subject: [PATCH] Init commit --- .gitignore | 10 ++ AUTHReport.cls | 385 +++++++++++++++++++++++++++++++++++++++++ AUTHReportTemplate.tex | 45 +++++ img/auth_logogr.png | Bin 0 -> 31645 bytes 4 files changed, 440 insertions(+) create mode 100644 .gitignore create mode 100644 AUTHReport.cls create mode 100644 AUTHReportTemplate.tex create mode 100644 img/auth_logogr.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4272786 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +*.synctex.gz + +# TexStudio files +*.aux +*.out +*.log + +# Output files +*.pdf + diff --git a/AUTHReport.cls b/AUTHReport.cls new file mode 100644 index 0000000..a5d5055 --- /dev/null +++ b/AUTHReport.cls @@ -0,0 +1,385 @@ +% +% AUTH report class +% +% note: Requires compilation with XeLaTeX or LuaTeX +% +% author: Christos Choutouridis +% +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{AUTHReport}[2024-11-03 AUTH Report document class] + + +% Options +% =============================================== + +% Declare option for short report version +\DeclareOption{short}{\def\auth@short{yes}} + +% Declare option for CoAuthor +\DeclareOption{coauthor}{\def\auth@coauthor{yes}} + + +% Default option values +\def\auth@short{no} +\def\auth@coauthor{no} + +% Pass all other options to article +\DeclareOption*{% + \PassOptionsToClass{\CurrentOption}{article} +} +\ProcessOptions\relax + +\LoadClass{article} + + +% Requirements +% =============================================== +\RequirePackage{iftex} +\ifPDFTeX + \RequirePackage[utf8]{inputenc} + \RequirePackage[T1]{fontenc} +\else + \RequirePackage{fontspec} +\fi + +\RequirePackage{xargs} % Commands + +\RequirePackage{geometry} % Layout +\RequirePackage{fancyhdr} + +\RequirePackage{graphicx} % Figures + +% Format packages +\RequirePackage[hang, small,labelfont=bf,up,textfont=it,up]{caption} % Custom captions under/above floats in tables or figures +\RequirePackage[nobottomtitles]{titlesec} +\RequirePackage{titling} +\RequirePackage[bottom]{footmisc} % Place footnotes always as much to the bottom as possible. + +\RequirePackage{hyperref} % Various +\RequirePackage[ddmmyyyy]{datetime} +\RequirePackage{enumitem} + + +% Local Tools +% =============================================== + +% Tool to check equality +\newcommand{\isequal}[2]{ \pdf@strcmp{#1}{#2} } + +% syntactic suggar for horizaontal rule +\newcommand{\Hrule}{ \rule{\linewidth}{0.1mm} } + + +% Theme +% =============================================== + +% Layout +% ===================================================== + +% Page core layout settings (include head and foot) +% A4 will result to: +% Top margin: 12mm +% Bottom margin: 11mm +% Head hight: 14mm +% Foot skip: 15mm +% Left margin: 15mm +% Right margin: 12mm +\newcommand{\authTopMargin}{12mm} +\newcommand{\authBottomMargin}{12mm} +\newcommand{\authHeadHeight}{10mm} +\newcommand{\authFootSkip}{10mm} +\newcommand{\authLeftMargin}{15mm} +\newcommand{\authRightMargin}{15mm} + + +% +% Sets page layout. (include head and foot) +\newcommand*{\authSetPageLayout}{% + \newgeometry{% + includeheadfoot, + top= \authTopMargin, + bottom= \authBottomMargin, + headheight= \authHeadHeight, + footskip= \authFootSkip, + lmargin= \authLeftMargin, + rmargin= \authRightMargin + } +} + +% Fonts +% ===================================================== + +% [1]: Main(Serif) body font +% [5]: Sans family font +% [6]: Mono family font +% +\newcommand{\authFontEnvSetup}[3]{% + \setmainfont{#1}[SmallCapsFeatures={Letters=SmallCaps}] + \setsansfont{#2} + \setmonofont{#3} + +% \newfontface\smallcapsfont{Libertinus Serif}[Letters=SmallCaps] +} + + +% Header and Footer +% ===================================================== + +\newcommand*{\authSetFooterEmpty}{% + % Clear styles + \fancyfoot{} + \renewcommand{\footrulewidth}{0pt} +} + +\newcommand*{\authSetFooter}{% + % Clear styles + \fancyfoot{} + \fancyfoot[C]{\thepage} + \renewcommand{\footrulewidth}{0pt} + \pagenumbering{arabic} +} + +\newcommand{\authSetHeaderEmpty}{ + % Clear styles + \fancyhead{} + \renewcommand{\headrulewidth}{0pt} +} + +\newcommand{\authSetHeader}{ + % Clear styles + \fancyhead{} + \fancyhead[L]{\auth@className} + \fancyhead[R]{\auth@docTitle} + \renewcommand{\headrulewidth}{0.5pt} +} + + +% +% Page styles +% +\fancypagestyle{plain}{% + % Style for the main document (including TOC) + \authSetFooter + \authSetHeader +} + +\fancypagestyle{authTitlePageStyle}{% + % Style for Title page + \authSetHeaderEmpty + \ifnum \isequal{\auth@short}{no}=0 + \authSetFooterEmpty + \else + \authSetFooter + \fi +} + + +% Common Page style +\newcommand{\authPageStyle}{% + + \renewcommand{\bottomtitlespace}{0.12\textheight} + + % Change the look of the section and subsection titles + \titleformat{\section}[block]{\large\scshape}{\thesection.}{1em}{} + \titleformat{\subsection}[block]{\large}{\thesubsection.}{1em}{} + \titleformat{\subsubsection}[block]{\normalsize}{\thesubsubsection.}{1em}{} + + \setlist[itemize]{noitemsep} % Make itemize lists more compact + + % Set paragraph identation and skip + \setlength{\parindent}{0pt} + \setlength{\parskip}{0.65em} + +} + +% \FirstPage +\newcommand{\authTitlePage}{% + \begin{titlepage} + % Logo + \begin{figure} + \begin{flushleft} + \includegraphics[width=5cm]{img/auth_logogr.png} + \end{flushleft} + \end{figure} + % Titles + \center % Center everything on the page + \textbf{} \\[3.5cm] % vertical space + \textsc{\Large \auth@department} \\[0.5cm] % Department + \textsc{\Large \auth@className} \\[1.5cm] % Class/Course name + \Hrule \\[0.4cm] % ------- + {\huge \bfseries \auth@docTitle} \\[0.1cm] % Document/Assignement Title + \Hrule \\[3.5cm] % ------- + % vertical space + % Authors + \begin{minipage}{0.4\textwidth} + \begin{flushleft} + \large + \ifdefined \auth@workGroup \emph{\textsc{\auth@workGroup}} \\[2ex]\fi + \ifnum \isequal{\auth@coauthor}{yes}=0 + \emph{Συντάκτες:} + \else + \emph{Συντάκτης:} + \fi \\ + \textsc{\auth@authorName} \\ + \textsc{AEM:\auth@authorAEM} \\[1ex] + \normalsize \href{mailto:\auth@authorMail}{\auth@authorMail} \\[2ex] + \large + \ifnum \isequal{\auth@coauthor}{yes}=0 + \textsc{\auth@coauthorName} \\ + \textsc{AEM:\auth@coauthorAEM} \\[1ex] + \normalsize \href{mailto:\auth@coauthorMail}{\auth@coauthorMail} + \fi + \end{flushleft} + \end{minipage} + \begin{minipage}{0.4\textwidth} + \begin{flushright} \large + \emph{Διδάσκων:} \\ % Instructor + \textsc{\auth@instructorName} \\[1ex] + \normalsize + \href{mailto:\auth@instructorMail}{\auth@instructorMail} + \end{flushright} + \end{minipage} \\ + \vfill + {\large \auth@date} \\ % date + + \end{titlepage} + \newpage +} + +% \TitleHeader +\newcommand{\authTitleHeader}{% + \begin{center} % Center everything on the page + % Logo + \begin{figure} + \center + \includegraphics[width=5cm]{img/auth_logogr.png} + \end{figure} + % Titles + \textsc{\Large \auth@department} \\[0.4cm] % Department + \textsc{\Large \auth@className} \\[0.1cm] % Class/Course name + {\Large \bfseries \auth@docTitle} \\[0.2cm] % Document/Assignement Title + {\large \auth@date} \\[0.4cm] % date + % Authors + \begin{minipage}{0.4\textwidth} + \begin{flushleft} + \large + \ifnum \isequal{\auth@coauthor}{yes}=0 + \emph{Συντάκτες:} + \else + \emph{Συντάκτης:} + \fi \\ + \textsc{\auth@authorName} \\ + \textsc{AEM:\auth@authorAEM} \\[1ex] + \normalsize \href{mailto:\auth@authorMail}{\auth@authorMail} \\[2ex] + \large + \ifnum \isequal{\auth@coauthor}{yes}=0 + \textsc{\auth@coauthorName} \\ + \textsc{AEM:\auth@coauthorAEM} \\[1ex] + \normalsize \href{mailto:\auth@coauthorMail}{\auth@coauthorMail} + \fi + \end{flushleft} + \end{minipage} + \begin{minipage}{0.4\textwidth} + \begin{flushright} \large + \emph{Διδάσκων:} \\ % Instructor + \textsc{\auth@instructorName} \\[1ex] + \normalsize + \href{mailto:\auth@instructorMail}{\auth@instructorMail} + \end{flushright} + \end{minipage} + \end{center} +} + + + + + +% Setup theme +% ===================================================== + +\AtBeginDocument{% + % Page layout (check above for the geometry setup) + \authSetPageLayout + + % Fonts + \authFontEnvSetup{CMU Serif}{CMU Sans Serif}{Courier New} + + % Header - Footer + \pagestyle{plain} + \thispagestyle{authTitlePageStyle} + + % Page styles and formating + \authPageStyle + + \normalsize +} % End \AtBeginDocument + + + +% QA document public environments/commands +% ===================================================== + +% Common fields +% ===================================================== +\newcommand*{\AuthorName}[1]{\def\auth@authorName{#1}} +\newcommand*{\AuthorMail}[1]{\def\auth@authorMail{#1}} +\newcommand*{\AuthorAEM}[1]{\def\auth@authorAEM{#1}} + +\newcommand*{\CoAuthorName}[1]{\def\auth@coauthorName{#1}} +\newcommand*{\CoAuthorMail}[1]{\def\auth@coauthorMail{#1}} +\newcommand*{\CoAuthorAEM}[1]{\def\auth@coauthorAEM{#1}} + +\newcommand*{\WorkGroup}[1]{\def\auth@workGroup{#1}} + +\newcommand*{\DocTitle}[1]{\def\auth@docTitle{#1}} +\newcommand*{\Department}[1]{\def\auth@department{#1}} +\newcommand*{\ClassName}[1]{\def\auth@className{#1}} + +\newcommand*{\InstructorName}[1]{\def\auth@instructorName{#1}} +\newcommand*{\InstructorMail}[1]{\def\auth@instructorMail{#1}} +\newcommand*{\CurrentDate}[1]{\def\auth@date{#1}} + + +\newcommand{\Title}{% + \ifnum \isequal{\auth@short}{no}=0 + \authTitlePage + \else + \authTitleHeader + \fi +} + +% \InsertFigure{}{}{}{} +% [1]: scale +% [2]: Label +% [3]: Figure file +% [4]: Caption text +% example: \InsertFigure{0.8}{fig:lala}{lala.png}{\eng{Makes lala}} +\newcommand{\InsertFigure}[4]{ + \begin{figure*}[h!] + \captionsetup{format=plain} + \centering + \includegraphics[width=#1\textwidth]{#3} + \caption{#4} + \label{#2} + \end{figure*} +} + +% \WrapFigure{}{}{}{} +% [1]: scale +% [2]: place left or right r,l,R,L +% [3]: Label +% [4]: Figure file +% [5]: Caption text +% example: \WrapFigure{0.8}{r}{fig:lala}{lala.png}{\eng{Makes lala}} +\newcommand{\WrapFigure}[5]{ + \begin{wrapfigure}{#2}{#1\textwidth} + \vspace{-20pt} + \begin{center} + \captionsetup{format=plain} + \includegraphics[width=#1\textwidth]{#4} + \caption{#5} + \label{#3} + \end{center} + \vspace{-20pt} + \end{wrapfigure} +} diff --git a/AUTHReportTemplate.tex b/AUTHReportTemplate.tex new file mode 100644 index 0000000..1abd80a --- /dev/null +++ b/AUTHReportTemplate.tex @@ -0,0 +1,45 @@ +% +% Network programming Lab sum report +% +% authors: +% Χρήστος Χουτουρίδης ΑΕΜ 8997 +% cchoutou@ece.auth.gr + + +\documentclass[a4paper, 11pt]{AUTHReport} + +% Document configuration +\AuthorName{Χρήστος Χουτουρίδης} +\AuthorMail{cchoutou@ece.auth.gr} +\AuthorAEM{8997} + +\CoAuthorName{asdf} +\CoAuthorMail{asdf} +\CoAuthorAEM{9874} + +%\WorkGroup{Ομάδα 3} + +\DocTitle{Τίτλος Title} +\Department{Computer εργαστήριο} +\ClassName{PDS πααλληλα} + +\InstructorName{Nick Πιτσιάνης} +\InstructorMail{ςε} +\CurrentDate{\today} + + +\usepackage{lipsum} + + +\begin{document} + +\Title + +\section{Εισαγωγή Intro} +\lipsum[1-4] + +\subsection{μικρός τίτλος small title} + +\lipsum[1-4] + +\end{document} diff --git a/img/auth_logogr.png b/img/auth_logogr.png new file mode 100644 index 0000000000000000000000000000000000000000..85b39f244e500a9dac3b1b710e2f6997952a4346 GIT binary patch literal 31645 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ğxIJwIr}A}cJ}kf2NXg#v`<5{C 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 a;7|Rx3An_!k2!A}OHEl@saC-n`Tqd?030d+ literal 0 HcmV?d00001