Newer
Older
%%
%% This is file `polytechnique.sty',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% polytechnique.dtx (with options: `package')
%% This is a generated file.
%%
%% Copyright (C) 2015 by Denis Merigoux
%%
%% This file may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either
%% version 1.2 of this license or (at your option) any later
%% version. The latest version of this license is in:
%%
%% http://www.latex-project.org/lppl.txt
%%
%% and version 1.2 or later is part of all distributions of
%% LaTeX version 1999/12/01 or later.
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{polytechnique}
[2017/09/02 v1.3.5, standard scientific documents layout for Ecole polytechnique (Palaiseau,France).]
%%\CharacterTable
%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
%% Digits \0\1\2\3\4\5\6\7\8\9
%% Exclamation \! Double quote \" Hash (number) \#
%% Dollar \$ Percent \% Ampersand \&
%% Acute accent \' Left paren \( Right paren \)
%% Asterisk \* Plus \+ Comma \,
%% Minus \- Point \. Solidus \/
%% Colon \: Semicolon \; Less than \<
%% Equals \= Greater than \> Question mark \?
%% Commercial at \@ Left bracket \[ Backslash \\
%% Right bracket \] Circumflex \^ Underscore \_
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
%%
\DeclareOption{a4paper}{
\PassOptionsToPackage{a4paper}{geometry}
}
\DeclareOption{fancysections}{
\AtEndOfPackage{
\titleformat{\chapter}
[display]
{\Huge\bfseries\sffamily}
{\LARGE\chaptertitlename{} \thechapter}
{0em}
{}
[]
\titleformat{\section}
[display]
{\color{rouge485}\LARGE\bfseries\sffamily\filcenter}
[\vspace*{-0.5\baselineskip}%
\includegraphics{\polyfiletlongrouge}]
\titleformat{\subsection}
{\color{bleu315}\Large\scshape}
{\thesubsection}
{0.5em}
{}
[\vspace*{-0.3\baselineskip}%
\includegraphics{\polyfiletcourtbleuclair}]
\titleformat{\subsubsection}
[block]
{\color{bleu303}\large\scshape}
{\thesubsubsection}
{0.5em}
{\textbullet{} }
[]
}
}
\DeclareOption{notitlepage}{
\renewcommand*{\maketitle}{
\notitlepagelayout{}
}
}
\DeclareOption{titlepage}{
\renewcommand*{\maketitle}{
\titlepagelayout{}
}
}
\DeclareOption{oneside}{
\AtEndOfPackage{
}
}
\DeclareOption{twoside}{
\AtEndOfPackage{
\geometry{inner=\margecoteinterieur,
outer=\margecoteexterieur}
}
}
\DeclareOption{sectionmark}{
\AtEndOfPackage{
\ifthesection{
{\scshape\color{bleu303}
\thesection{}.~\sectiontitle}
}{
}
}
}
}
\DeclareOption{chaptermark}{
\AtEndOfPackage{
\ifthechapter{
{\scshape\color{bleu303}
\thechapter{}.~\chaptertitle}
}{
}
}
}
}
\DeclareOption{markboth}{
\AtEndOfPackage{
\ifthesection{%Si la section a ete definie
{\scshape\color{bleu303}
\thesection{}.~\sectiontitle}
}{
}
}
\ifthechapter{
{\scshape\color{bleu303}
\thechapter{}.~\chaptertitle}
}{
}
}
}
}
\DeclareOption{pagenumber}{
\AtEndOfPackage{
\RequirePackage{lastpage}
\renewcommand{\piedcentre}{
\setlength{\largeurfiletpiedcentre}
{2\largeurfiletpiedcentre}
\textcolor{bleu303}{\shortstack[c]{
\rule{\largeurfiletpiedcentre}{0.3mm}\\
\thepage/\pageref{LastPage}}}
}
}
}
\newif\ifgrandesmarges
\grandesmargesfalse
\DeclareOption{enmanquedinspiration}{
\DeclareOption*{
\PassOptionsToPackage{\CurrentOption}{geometry}
}
\RequirePackage{geometry}
\RequirePackage{graphicx}
\RequirePackage{ifthen}
\RequirePackage{ifpdf}
\RequirePackage{lmodern}
\RequirePackage[pagestyles]{titlesec}
\definecolor{bleu303}{RGB}{0,62,92}
\definecolor{rouge485}{RGB}{213,43,30}
\definecolor{bleu315}{RGB}{0,104,128}
\ifpdf
\newcommand{\polyfiletlongrouge}
{polytechnique-filetlongrouge.pdf}
\newcommand{\polyfiletcourt}
{polytechnique-filetcourt.pdf}
\let\polyfiletcourtbleuclair\polyfiletcourt
\let\polyfiletcourtbleu\polyfiletcourt
\newcommand{\polylogovert}
{polytechnique-logovert.pdf}
\newcommand{\polylogohori}
{polytechnique-logohori.pdf}
\newcommand{\polyarmes}
{polytechnique-armes.pdf}
\newcommand{\polyfiletlongrouge}
{polytechnique-filetlongrouge.eps}
\newcommand{\polyfiletcourtbleuclair}
{polytechnique-filetcourtbleuclair.eps}
\newcommand{\polyfiletcourtbleu}
{polytechnique-filetcourtbleu.eps}
\newcommand{\polylogovert}
{polytechnique-logovert.eps}
\newcommand{\polylogohori}
{polytechnique-logohori.eps}
\newcommand{\polyarmes}
{polytechnique-armes.eps}
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
\fi
\newlength{\margehaut}
\setlength{\margehaut}{40mm}
\newlength{\hauteurentete}
\setlength{\hauteurentete}{27mm}
\newlength{\separationentete}
\setlength{\separationentete}{12mm}
\newlength{\margecote}
\setlength{\margecote}{20mm}
\newlength{\margecoteinterieur}
\setlength{\margecoteinterieur}{22.5mm}
\newlength{\margecoteexterieur}
\setlength{\margecoteexterieur}{17.5mm}
\newlength{\margebas}
\setlength{\margebas}{35mm}
\newlength{\separationpied}
\setlength{\separationpied}{17.5mm}
\newlength{\hauteurlogohori}
\setlength{\hauteurlogohori}{15mm}
\newlength{\separationtitre}
\setlength{\separationtitre}{15mm}
\newlength{\epaisseurtrait}
\setlength{\epaisseurtrait}{1pt}
\newlength{\separationlignestitre}
\setlength{\separationlignestitre}{3mm}
\newlength{\separationtitrecorps}
\setlength{\separationtitrecorps}{15mm}
\ifgrandesmarges
\setlength\margecote{1.5\margecote}
\setlength\margehaut{1.2\margehaut}
\setlength\margebas{1.2\margebas}
\setlength\margecoteinterieur{1.5\margecoteinterieur}
\setlength\margecoteexterieur{1.5\margecoteexterieur}
\fi
\newlength{\hauteurlogopage}
\setlength{\hauteurlogopage}{0.6\textheight}
\newlength{\separationentetelogo}
\setlength{\separationentetelogo}{20mm}
\newlength{\largeurfiletpiedcentre}
\setlength{\largeurfiletpiedcentre}{4mm}
\newlength{\largeurlogovert}
\setlength{\largeurlogovert}{\paperwidth/\real{7}}
\newlength{\hauteurlogovert}
\setlength{\hauteurlogovert}{\largeurlogovert*\real{1.361}}
\newlength{\largeurlogohori}
\setlength{\largeurlogohori}{\hauteurlogohori*\real{1.859}}
\newlength{\distancetitrelogo}
\setlength{\distancetitrelogo}{\separationtitre-\margehaut}
\newlength{\separationlogotrait}
\setlength{\separationlogotrait}{-\baselineskip*2+10mm}
\newlength{\largeurminipage}
\setlength{\largeurminipage}
\newlength{\distancetitrecorps}
\setlength{\distancetitrecorps}
{\separationtitrecorps-\baselineskip*2}
\newlength{\largeurtitreentete}
\setlength{\largeurtitreentete}{\textwidth-\largeurlogohori
-\separationentetelogo}
\newlength{\decalageverticalentete}
\setlength{\decalageverticalentete}
{\hauteurlogohori/\real{2.6}}
\geometry{
top=\margehaut,headheight=\hauteurentete,
headsep=\separationentete,
bottom=\margebas,footskip=\separationpied
}
\newcommand{\piedcentre}{
\textcolor{bleu303}{\shortstack[c]
{\rule{\largeurfiletpiedcentre}{0.3mm}\\\thepage}}
}
{\begin{minipage}[b]{\largeurtitreentete}
\scshape#1\textcolor{bleu303}
\newcommand{\enteteinterieur}[2][bleu303]{
{%
\color{#1}%
\includegraphics[height=\hauteurlogohori,width=2\largeurlogohori,keepaspectratio]{#2}%
}%
\newcommand{\enteteexterieurpair}{
\enteteexterieur{\flushright}
\newcommand{\enteteinterieurpair}{
\enteteinterieur{\polylogohori}
}
\newcommand{\enteteinterieurimpair}{
\enteteinterieur{\polylogohori}
}
\newcommand{\entetes}{
\newpagestyle{polytechnique}{
\sethead[\raisebox{.5\hauteurlogohori}{\raisebox{-0.5\height}{\enteteinterieurpair}}]% left even
[\raisebox{.5\hauteurlogohori}{\raisebox{-0.5\height}{\enteteexterieurpair}}]% right even
{\raisebox{.5\hauteurlogohori}{\raisebox{-0.5\height}{\enteteexterieurimpair}}}% left odd
{\raisebox{.5\hauteurlogohori}{\raisebox{-0.5\height}{\enteteinterieurimpair}}}% right odd
\setfoot{}% left odd
{\piedcentre}% center odd
{}% right odd
}
\pagestyle{polytechnique}
}
\renewpagestyle{plain}{
\sethead{}% left
{}% center
{}% right
\setfoot{}% left
{\piedcentre}% center
{}% right
}
\pagestyle{plain}
\newboolean{subtitle}\setboolean{subtitle}{false}
\newcommand{\polysoustitresave}{}
\renewcommand*{\polysoustitresave}{#1}
\setboolean{subtitle}{true}
}
\newcommand{\polytitresave}{}
\newcommand{\polytitrecourtsave}{}
\renewcommand*{\title}[2][{}]{
\renewcommand*{\polytitresave}{#2}
\entetes
}
\newcommand{\polyauthorsave}{}
\renewcommand*{\author}[1]{
\renewcommand*{\polyauthorsave}{#1}
}
\newcommand{\polydatesave}{\today}
\renewcommand*{\date}[1]{
\renewcommand*{\polydatesave}{#1}
}
\newcommand{\logo}[2][{}]{
\ifthenelse{\equal{#1}{headers}}{
\renewcommand{\enteteinterieurimpair}{
\enteteinterieur{#2}
}
}{}
\renewcommand{\titlepagebottomline}{
\begin{minipage}{5\largeurlogohori}
\centering
\raisebox{-0.5\height}{
\includegraphics[width=1.5\largeurlogohori]
{\polylogohori}
}
\hspace{0.25\largeurlogohori}
\raisebox{-0.5\height}{
\includegraphics[height=\hauteurlogovert,
width=1.5\largeurlogohori,
\begin{minipage}{\textwidth}
{\color{bleu303}%
\includegraphics[width=\largeurlogovert]
\end{minipage}%
% \end{macrocode}
\begin{minipage}{0.33\textwidth}
\centering\polydatesave{}\\
\polyauthorsave{}\\
\includegraphics{\polyfiletcourtbleu}
\end{minipage}%
\begin{minipage}{0.33\textwidth}
{\includegraphics[height=\hauteurlogovert,
}
}
\newcommand{\notitlepageupperline}{
\noindent
\begin{minipage}[b]{\largeurminipage}
\hspace{0cm}\polyauthorsave
{\color{bleu303}%
\includegraphics[width=\largeurlogovert]{\polylogovert}}
\begin{minipage}[b]{\largeurminipage}
\flushright\hspace{0cm}\polydatesave
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
}
\newcommand{\notitlepagelayout}{
\thispagestyle{plain}
\vspace*{\distancetitrelogo}
\notitlepageupperline{}
\\[\separationlogotrait]
\begin{center}
\textcolor{bleu303}
{\rule{\textwidth}{\epaisseurtrait}}
\\
\color{bleu303}\Huge\scshape
\MakeUppercaseWithNewline{\polytitresave}
\ifthenelse{\boolean{subtitle}}{
\\[\separationlignestitre]
\Large\upshape\polysoustitresave\\\normalsize
}{
\\
\normalsize
}
\textcolor{bleu303}
{\rule{\textwidth}{\epaisseurtrait}}
\end{center}
\vspace*{\distancetitrecorps}
}
\newcommand{\titlepagebottomline}{
\includegraphics[height=\hauteurlogovert]{\polylogovert}
}
\newcommand{\titlepagelayout}{
\noindent\makebox[\textwidth][c]{%
\raisebox{-\totalheight}[0pt][0pt]{%
\color{bleu303pale}%
\includegraphics[height=\hauteurlogopage]{\polyarmes}}}
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
\vspace*{0.125\textheight}
\begin{center}
\Huge\sffamily\bfseries\color{bleu303}
\MakeUppercaseWithNewline{\polytitresave}\\
\vspace*{0.2\textheight}
\LARGE\hspace{0cm}\polysoustitresave\\
\vspace*{0.15\textheight}
\Large\mdseries\hspace{0cm}\polydatesave\\
\includegraphics{\polyfiletcourtbleu}
\\[0.4\baselineskip]
\rmfamily\hspace{0cm}\polyauthorsave\\[\fill]
$\;$\titlepagebottomline{}
\vspace*{-0.5\margebas}
\end{center}
\thispagestyle{empty}
\clearpage
}
\newcommand{\MakeUppercaseWithNewline}[1]{
\begingroup
\let\SavedOrgNewline\\%
\DeclareRobustCommand{\\}{\SavedOrgNewline}%
\MakeUppercase{#1}%
\endgroup
}
\endinput
%%
%% End of file `polytechnique.sty'.