\ProvidesClass{rapstage}[2024/02/06 Rapport de stage de Paris Cité] \LoadClass[12pt]{article} % Options \newif\ifoption@code \DeclareOption{code}{\option@codetrue} \newif\ifoption@f \DeclareOption{f}{\option@ftrue} \newif\ifoption@n \DeclareOption{n}{\option@ntrue} \newcommand{\@student}{Étudiant} \ProcessOptions \ifoption@code % Intégration code \RequirePackage{minted} \usemintedstyle{emacs} \fi \ifoption@f % Mode féminin \renewcommand{\@student}{Étudiante} \fi \ifoption@n % Mode neutre \renewcommand{\@student}{Étudiant·e} \fi % Encodage \RequirePackage[T1]{fontenc} % Polices \RequirePackage[nopatch=footnote]{microtype} \RequirePackage{mathptmx} % Times New Roman \RequirePackage{fontspec} % Arial \setmainfont{Times New Roman} % Langage \RequirePackage[french]{babel} \frenchsetup{SmallCapsFigTabCaptions=false} % Guillemets \usepackage[style=english]{csquotes} \MakeOuterQuote{"} % Format des pages \RequirePackage[a4paper]{geometry} % Style de bibliographie \addto{\extrasfrench}{\renewcommand\refname{Bibliographie}} \bibliographystyle{unsrt} % TODO : Autoriser des commandes sans mail % Auteur \newcommand{\me@unstarred}[3]{ \gdef\@mef{#1} % first name \gdef\@mel{#2} % last name \gdef\@mail{mailto:#3} % mail } \newcommand{\me@starred}[2]{ \gdef\@mef{#1} % first name \gdef\@mel{#2} % last name \gdef\@mail{} % mail } \newcommand{\me}{\@ifstar{\me@starred}{\me@unstarred}} \newcommand{\@mef}{Alice} \newcommand{\@mel}{Dubois} \newcommand{\@mail}{mailto:alice.dubois@example.com} % Titre \renewcommand{\title}[1]{\gdef\@title{#1}} \renewcommand{\@title}{TITRE DU RAPPORT} % Date \newcount\lastyear \lastyear=\year \advance\lastyear by -1 \renewcommand{\date}[1]{\gdef\@date{#1}} \renewcommand{\@date}{\the\lastyear{}/\the\year{}} % Tuteur pédagogique \newcommand{\tuteurpedago@unstarred}[2]{ \gdef\@tpn{#1} % nom \gdef\@tpm{mailto:#2} % mail } \newcommand{\tuteurpedago@starred}[1]{ \gdef\@tpn{#1} % nom \gdef\@tpm{} % mail } \newcommand{\tuteurpedago}{ \@ifstar{\tuteurpedago@starred}{\tuteurpedago@unstarred}} \newcommand{\@tpn}{John Doe} \newcommand{\@tpm}{mailto:john.doe@example.com} % Tuteur entreprise \newcommand{\tuteurentreprise@unstarred}[2]{ \gdef\@ten{#1} % nom \gdef\@tem{mailto:#2} % mail } \newcommand{\tuteurentreprise@starred}[1]{ \gdef\@ten{#1} % nom \gdef\@tem{} % mail } \newcommand{\tuteurentreprise}{ \@ifstar{\tuteurentreprise@starred}{\tuteurentreprise@unstarred}} \newcommand{\@ten}{Bob Dupont} \newcommand{\@tem}{mailto:bob.dupont@example.com} % Directeurice université \newcommand{\directeur}[1]{\gdef\@directeur{#1}} \newcommand{\@directeur}{Carole \textsc{Delporte}} % Sous-titre \newcommand{\subtitle}[1]{\gdef\@subtitle{#1}} \newcommand{\@subtitle}{Rapport de Stage de Master 2} % Fichier de la bibliographie \newcommand{\bibliofile}[1]{\gdef\@refile{#1}} % Mise en page \RequirePackage{titlesec} \titleformat*{\section}{\fontspec{Arial}\LARGE\bfseries} \titleformat*{\subsection}{\fontspec{Arial}\Large\bfseries\itshape} % Point après numéro dans le titre \RequirePackage{titlesec} \titlelabel{\thetitle.\quad} % Interligne \RequirePackage{setspace} \setstretch{1.15} % Page current/max \RequirePackage[page]{totalcount} \RequirePackage{fancyhdr} \pagestyle{fancy} \fancyhf{} \cfoot{\thepage/\totalpages} \renewcommand{\headrulewidth}{0pt} % Liens cliquable et métadonnées \RequirePackage{hyperref} \AtBeginDocument{ \hypersetup{ pdfauthor={\@mef~\@mel}, pdftitle={\@title}, pdfkeywords={rapport, stage}, pdfsubject={Rapport de stage pour l'Université Paris Cité}, pdfcreator={LaTeX with rapstage class and hyperref package}, hidelinks, } } % Images \RequirePackage{graphicx,float} % Figures \usepackage[font=it,labelsep=colon]{caption} \addto\captionsfrench{\renewcommand{\figurename}{Illustration}} \renewcommand{\maketitle}{ \begin{titlepage} \begin{center} \includegraphics[alt={Logo},height=3.5cm]{images/logo.png} { \setmainfont{Arial} \LARGE Université Paris Cité\\ } \vspace{1cm} \Large \textsc{Faculté de Sciences}\\ \vspace{3mm} UFR d'Informatique\\ Directrice : \@directeur\\ \vspace{15mm} \textsc{\@subtitle}\\ \LARGE \textsc{\textbf{\underline{\@title}}} \vspace{25mm} \Large \begin{tabular}{ll} \itshape Tuteur pédagogique : & \itshape\href{\@tpm}{\@tpn} \\ \itshape Tuteur en entreprise : & \itshape\href{\@tem}{\@ten} \\ \end{tabular} \vspace{1cm} \hfill \textit{\@student : \href{\@mail}{\@mef~\textsc{\@mel}}} \vfill \textsc{Année universitaire \@date} \end{center} \end{titlepage} % Nouvelle page vierge \setcounter{page}{3} \shipout\null \newgeometry{ left=4cm, right=2cm, top=3.51cm, bottom=3.51cm, } } % Permet d'ajouter la bibliographie \newcommand{\reference}{ \newpage \pagestyle{empty} \addcontentsline{toc}{section}{\refname} \bibliography{\@refile} } % Souligne mieux les mots \newcommand{\ul}[1]{\underline{\smash{#1}}} % Ne déborde pas sur la marge \AtBeginDocument{ \sloppy }