Denis Merigoux лет назад: 10
Родитель
Сommit
68f230cea0
4 измененных файлов с 72 добавлено и 55 удалено
  1. 3 1
      .gitignore
  2. 38 28
      source/polytechnique.dtx
  3. BIN
      source/polytechnique.pdf
  4. 31 26
      source/polytechnique.sty

+ 3 - 1
.gitignore

3
 *.fls
3
 *.fls
4
 *.log
4
 *.log
5
 *.out
5
 *.out
6
-*.synctex.gz
6
+*.synctex.gz
7
+source/polytechnique.pdf
8
+guide/installation.pdf

+ 38 - 28
source/polytechnique.dtx

178
 %\begin{description}
178
 %\begin{description}
179
 %\item[oneside]  C'est le comportement par défaut, les en-têtes et les marges seront les mêmes pour toutes les pages.
179
 %\item[oneside]  C'est le comportement par défaut, les en-têtes et les marges seront les mêmes pour toutes les pages.
180
 %\item[twoside]  Rend la marge intérieur plus grande que la marge extérieure et transforme les en-têtes gauche/droite en en-têtes intérieurs/extérieurs.
180
 %\item[twoside]  Rend la marge intérieur plus grande que la marge extérieure et transforme les en-têtes gauche/droite en en-têtes intérieurs/extérieurs.
181
-%\item[notitlepage]  Comportement par défaut pour la classe |article|. |\maketitle| produit son résultat sur un quart de page environ.
182
-%\item[titlepage]  Comportement par défaut pour les classes |report| et |book|. 
183
 %\item[a4paper]  Signifie à \LaTeX{} que le format de la feuille est A4. À inclure systématiquement pour éviter les mauvaises surprises.
181
 %\item[a4paper]  Signifie à \LaTeX{} que le format de la feuille est A4. À inclure systématiquement pour éviter les mauvaises surprises.
184
 %\end{description}
182
 %\end{description}
185
 %
183
 %
191
 %\end{center}
189
 %\end{center}
192
 %En voici la liste :
190
 %En voici la liste :
193
 %\begin{description}
191
 %\begin{description}
192
+%\item[notitlepage]  Comportement par défaut pour la classe |article|. |\maketitle| produit son résultat sur un quart de page environ.
193
+%\item[titlepage]  Comportement par défaut pour les classes |report| et |book|. Produit une belle page de couverture avec les armes en arrière-plan.
194
 %\item[fancysections]  Redéfinit les commandes |\chapter|, |\section|, |\subsection| et |\subsubsection| avec un style conforme à la charte graphique de l'École. Donne un aspect moins formel au document.
194
 %\item[fancysections]  Redéfinit les commandes |\chapter|, |\section|, |\subsection| et |\subsubsection| avec un style conforme à la charte graphique de l'École. Donne un aspect moins formel au document.
195
 %\item[pagenumber]  Change la numérotation des pages dans le pied de page. Si l'option est activée, elle deviendra \meta{page en cours}/\meta{nombre total de pages}.
195
 %\item[pagenumber]  Change la numérotation des pages dans le pied de page. Si l'option est activée, elle deviendra \meta{page en cours}/\meta{nombre total de pages}.
196
 %\item[sectionmark]  Affiche en en-tête intérieur le titre de la section courante plutôt que le titre du document.
196
 %\item[sectionmark]  Affiche en en-tête intérieur le titre de la section courante plutôt que le titre du document.
263
 %Cette option activée par défaut produit un titre avec logo vertical de l'X, auteur et date sur la première lignes, puis le titre et le sous-titre entre filets horizontaux. L'option est aussi reconnues depuis les options globales passées à |\documentclass|.
263
 %Cette option activée par défaut produit un titre avec logo vertical de l'X, auteur et date sur la première lignes, puis le titre et le sous-titre entre filets horizontaux. L'option est aussi reconnues depuis les options globales passées à |\documentclass|.
264
 %    \begin{macrocode}
264
 %    \begin{macrocode}
265
 \DeclareOption{notitlepage}{
265
 \DeclareOption{notitlepage}{
266
-    \AtBeginDocument{
267
         \renewcommand*{\maketitle}{
266
         \renewcommand*{\maketitle}{
268
             \notitlepagelayout{}
267
             \notitlepagelayout{}
269
-        }
270
     }
268
     }
271
 }
269
 }
272
 %    \end{macrocode}
270
 %    \end{macrocode}
283
 %\end{itemize}
281
 %\end{itemize}
284
 %    \begin{macrocode}
282
 %    \begin{macrocode}
285
 \DeclareOption{titlepage}{
283
 \DeclareOption{titlepage}{
286
-    \AtBeginDocument{
287
         \renewcommand*{\maketitle}{
284
         \renewcommand*{\maketitle}{
288
             \titlepagelayout{}
285
             \titlepagelayout{}
289
-        }
290
     }
286
     }
291
 }
287
 }
292
 %    \end{macrocode}
288
 %    \end{macrocode}
405
 %    \end{macrocode}
401
 %    \end{macrocode}
406
 %Enfin, on exécute les options standards utilisées par la classe article.
402
 %Enfin, on exécute les options standards utilisées par la classe article.
407
 %    \begin{macrocode}
403
 %    \begin{macrocode}
408
-\ExecuteOptions{a4paper,notitlepage,oneside}
409
-\ProcessOptions\relax
404
+\ExecuteOptions{a4paper,notitlepage}
405
+\ProcessOptions*
410
 %    \end{macrocode}
406
 %    \end{macrocode}
411
 %\subsection{Chargement des packages externes}
407
 %\subsection{Chargement des packages externes}
412
 %
408
 %
844
 %On redefinit la variable |\titlepagebottomline| pour l'option |titlepage|.
840
 %On redefinit la variable |\titlepagebottomline| pour l'option |titlepage|.
845
 %    \begin{macrocode}
841
 %    \begin{macrocode}
846
     \renewcommand{\titlepagebottomline}{
842
     \renewcommand{\titlepagebottomline}{
847
-        \includegraphics[height=1.5\hauteurlogohori]
848
-            {\polylogohori}
849
-        \hspace{0.05\textwidth}
843
+    	\begin{minipage}{5\largeurlogohori}
844
+    	    \centering
845
+    	    \raisebox{-0.5\height}{
846
+                \includegraphics[width=1.5\largeurlogohori]
847
+                    {\polylogohori}
848
+            }
849
+            \hspace{0.25\largeurlogohori}
850
 %    \end{macrocode}
850
 %    \end{macrocode}
851
 %Pour une certaine harmonie, on ne laisse pas à l'utilisateur le choix des dimensions du logo. Celles-ci sont déterminées en fonction des dimensions du logo horizontal de l'X pour que les deux logos aient des proportions similaires.
851
 %Pour une certaine harmonie, on ne laisse pas à l'utilisateur le choix des dimensions du logo. Celles-ci sont déterminées en fonction des dimensions du logo horizontal de l'X pour que les deux logos aient des proportions similaires.
852
 %    \begin{macrocode}
852
 %    \begin{macrocode}
853
-        \includegraphics[height=\hauteurlogovert,
854
-            width=1.5\largeurlogohori,
855
-            keepaspectratio]{#1}%
853
+            \raisebox{-0.5\height}{
854
+                \includegraphics[height=\hauteurlogovert,
855
+                    width=1.5\largeurlogohori,
856
+                    keepaspectratio]{#1}
857
+            }
858
+        \end{minipage}
856
     }
859
     }
857
 %    \end{macrocode}
860
 %    \end{macrocode}
858
 %On redéfinit ensuite la commande |\notitlepageupperline| pour l'option |notitlepage|.
861
 %On redéfinit ensuite la commande |\notitlepageupperline| pour l'option |notitlepage|.
859
 %    \begin{macrocode}
862
 %    \begin{macrocode}
860
     \renewcommand{\notitlepageupperline}{	
863
     \renewcommand{\notitlepageupperline}{	
861
-        \noindent
864
+        \noindent%
862
         \begin{minipage}{\textwidth}
865
         \begin{minipage}{\textwidth}
866
+            \centering
863
 %    \end{macrocode}
867
 %    \end{macrocode}
864
 %Le système de |minipage| et de |\parbox| est fait de tel sorte que les deux logos soient alignés à gauche et à droite sur la première ligne et verticalement au centre ; la date et le titre sont centrés sur la largeur et la hauteur.
868
 %Le système de |minipage| et de |\parbox| est fait de tel sorte que les deux logos soient alignés à gauche et à droite sur la première ligne et verticalement au centre ; la date et le titre sont centrés sur la largeur et la hauteur.
865
 %    \begin{macrocode}
869
 %    \begin{macrocode}
866
-            \parbox{0.333\textwidth}
867
-                {\raisebox{-0.5\height}
870
+		\begin{minipage}{0.33\textwidth}
871
+                \raisebox{-0.5\height}
872
+%    \end{macrocode}
873
+%Les logos sont cntrés verticalement grâce au |\raisebox|. |\height| contient la hauteur de la |minipage| en cours.
874
+%    \begin{macrocode}
868
                     {\includegraphics[width=\largeurlogovert]
875
                     {\includegraphics[width=\largeurlogovert]
869
                         {\polylogovert}
876
                         {\polylogovert}
870
                     }
877
                     }
871
-                }
872
-            \parbox{0.333\textwidth}
873
-                 {\centering\polydatesave{}\\
874
-                     \polyauthorsave{}\\
875
-                     \includegraphics{\polyfiletcourtbleu}
876
-                 }
877
-            \parbox{0.333\textwidth}
878
-                {\flushright\raisebox{-0.5\height}
878
+            \end{minipage}%
879
+            %    \end{macrocode}
880
+%Le |%| qui suit le |\end{minipage}| est en fait très important. La ligne est divisée en 3 minipage de largeur |0.33\textwidth|, ce qui couvre exactement la largeur de la page. Néanmoins un retour à la ligne dans le code correspond à un espace sur la sortie, ce qui augmente la largeur de la ligne et la fait déborder : le logo de droite se retrouve sur la ligne suivante, ce qui n'est pas voulu. Le |%| sert à annuler l'effet espace du retour à la ligne dans le code.
881
+%    \begin{macrocode}
882
+            \begin{minipage}{0.33\textwidth}
883
+                \centering\polydatesave{}\\
884
+                \polyauthorsave{}\\
885
+                \includegraphics{\polyfiletcourtbleu}
886
+            \end{minipage}%
887
+            \begin{minipage}{0.33\textwidth}
888
+                    \flushright\raisebox{-0.5\height}
879
                     {\includegraphics[height=\hauteurlogovert,
889
                     {\includegraphics[height=\hauteurlogovert,
880
-                        width=1.5\largeurlogohori,
890
+                        width=1.75\largeurlogohori,
881
                         keepaspectratio]{#1}
891
                         keepaspectratio]{#1}
882
                     }
892
                     }
883
-                }
884
-         \end{minipage}
893
+            \end{minipage} 
894
+        \end{minipage}
885
     }
895
     }
886
 }
896
 }
887
 %    \end{macrocode}
897
 %    \end{macrocode}

BIN
source/polytechnique.pdf


+ 31 - 26
source/polytechnique.sty

75
     }
75
     }
76
 }
76
 }
77
 \DeclareOption{notitlepage}{
77
 \DeclareOption{notitlepage}{
78
-    \AtBeginDocument{
79
         \renewcommand*{\maketitle}{
78
         \renewcommand*{\maketitle}{
80
             \notitlepagelayout{}
79
             \notitlepagelayout{}
81
-        }
82
     }
80
     }
83
 }
81
 }
84
 \DeclareOption{titlepage}{
82
 \DeclareOption{titlepage}{
85
-    \AtBeginDocument{
86
         \renewcommand*{\maketitle}{
83
         \renewcommand*{\maketitle}{
87
             \titlepagelayout{}
84
             \titlepagelayout{}
88
-        }
89
     }
85
     }
90
 }
86
 }
91
 \DeclareOption{oneside}{
87
 \DeclareOption{oneside}{
161
 \DeclareOption*{
157
 \DeclareOption*{
162
     \PassOptionsToPackage{\CurrentOption}{geometry}
158
     \PassOptionsToPackage{\CurrentOption}{geometry}
163
 }
159
 }
164
-\ExecuteOptions{a4paper,notitlepage,oneside}
165
-\ProcessOptions\relax
160
+\ExecuteOptions{a4paper,notitlepage}
161
+\ProcessOptions*
166
 \RequirePackage{calc}
162
 \RequirePackage{calc}
167
 \RequirePackage{color}
163
 \RequirePackage{color}
168
 \RequirePackage{geometry}
164
 \RequirePackage{geometry}
315
 
311
 
316
 \newcommand{\logo}[1]{
312
 \newcommand{\logo}[1]{
317
     \renewcommand{\titlepagebottomline}{
313
     \renewcommand{\titlepagebottomline}{
318
-        \includegraphics[height=1.5\hauteurlogohori]
319
-            {\polylogohori}
320
-        \hspace{0.05\textwidth}
321
-        \includegraphics[height=\hauteurlogovert,
322
-            width=1.5\largeurlogohori,
323
-            keepaspectratio]{#1}%
314
+     \begin{minipage}{5\largeurlogohori}
315
+         \centering
316
+         \raisebox{-0.5\height}{
317
+                \includegraphics[width=1.5\largeurlogohori]
318
+                    {\polylogohori}
319
+            }
320
+            \hspace{0.25\largeurlogohori}
321
+            \raisebox{-0.5\height}{
322
+                \includegraphics[height=\hauteurlogovert,
323
+                    width=1.5\largeurlogohori,
324
+                    keepaspectratio]{#1}
325
+            }
326
+        \end{minipage}
324
     }
327
     }
325
     \renewcommand{\notitlepageupperline}{
328
     \renewcommand{\notitlepageupperline}{
326
-        \noindent
329
+        \noindent%
327
         \begin{minipage}{\textwidth}
330
         \begin{minipage}{\textwidth}
328
-            \parbox{0.333\textwidth}
329
-                {\raisebox{-0.5\height}
331
+            \centering
332
+\begin{minipage}{0.33\textwidth}
333
+                \raisebox{-0.5\height}
330
                     {\includegraphics[width=\largeurlogovert]
334
                     {\includegraphics[width=\largeurlogovert]
331
                         {\polylogovert}
335
                         {\polylogovert}
332
                     }
336
                     }
333
-                }
334
-            \parbox{0.333\textwidth}
335
-                 {\centering\polydatesave{}\\
336
-                     \polyauthorsave{}\\
337
-                     \includegraphics{\polyfiletcourtbleu}
338
-                 }
339
-            \parbox{0.333\textwidth}
340
-                {\flushright\raisebox{-0.5\height}
337
+            \end{minipage}%
338
+            %    \end{macrocode}
339
+            \begin{minipage}{0.33\textwidth}
340
+                \centering\polydatesave{}\\
341
+                \polyauthorsave{}\\
342
+                \includegraphics{\polyfiletcourtbleu}
343
+            \end{minipage}%
344
+            \begin{minipage}{0.33\textwidth}
345
+                    \flushright\raisebox{-0.5\height}
341
                     {\includegraphics[height=\hauteurlogovert,
346
                     {\includegraphics[height=\hauteurlogovert,
342
-                        width=1.5\largeurlogohori,
347
+                        width=1.75\largeurlogohori,
343
                         keepaspectratio]{#1}
348
                         keepaspectratio]{#1}
344
                     }
349
                     }
345
-                }
346
-         \end{minipage}
350
+            \end{minipage}
351
+        \end{minipage}
347
     }
352
     }
348
 }
353
 }
349
 \newcommand{\notitlepageupperline}{
354
 \newcommand{\notitlepageupperline}{