瀏覽代碼

Merge pull request #5 from BinetReseau/logo

ajout logo entete
Denis Merigoux 10 年之前
父節點
當前提交
ddf4bc9cc9
共有 5 個文件被更改,包括 100 次插入39 次删除
  1. 4 1
      .gitignore
  2. 4 0
      TODO
  3. 3 3
      guide/installation.tex
  4. 61 24
      source/polytechnique.dtx
  5. 28 11
      source/polytechnique.sty

+ 4 - 1
.gitignore

@@ -6,4 +6,7 @@
6 6
 *.synctex.gz
7 7
 source/polytechnique.pdf
8 8
 guide/installation.pdf
9
-*.zip
9
+*.zip
10
+*.glo
11
+*.idx
12
+*.toc

+ 4 - 0
TODO

@@ -0,0 +1,4 @@
1
+# 1. faire l'ajout titre court dans le dtx
2
+# 2. transformer le logo entete en une option, ou quelque chose dans le genre
3
+# 3. Ajouter ces deux modifications à la documentation
4
+4. Corriger la partie install de la documentation.

+ 3 - 3
guide/installation.tex

@@ -106,7 +106,7 @@ Après exécution du script, le message affiché sur la console devrait être :
106 106
 ************************************************
107 107
 \end{verbatim}
108 108
 
109
-Si ce message ne s'affiche pas, se reporter à la méthode manuelle.
109
+Si ce message ne s'affiche pas ou si l'installation semble ne pas fonctionner quand vous essayez d'utiliser le package, se reporter à la méthode manuelle.
110 110
 \subsubsection{Méthode manuelle}
111 111
 
112 112
 Il faut chercher où se trouve le répertoire de ton installation LaTeX. Pour cela (et quelque soit ton système d'exploitation), ouvre une ligne de commandes et tape :
@@ -115,12 +115,12 @@ kpsewhich -var-value TEXMFMAIN
115 115
 \end{verbatim}
116 116
 Rends-toi alors dans le répertoire indiqué que l'on nommera par la suite \emph{INSTALL}. Dans une autre fenêtre de ton explorateur de fichiers, extrais l'archive téléchargée et ouvre le dossier \emph{source}. Il suffit ensuite de copier tous les fichiers \texttt{.pdf}, \texttt{.eps} et \texttt{polytechnique.sty} vers le dossier \emph{INSTALL/tex/latex/polytechnique}. 
117 117
 
118
-Il te faut enfin mettre à jour la la liste de package de ta distribution. Pour Mac ou Linux, ouvre un terminal et entre \texttt{sudo texhash}. Pour Windows, ouvre dans tous les programmes l'utilitaire \emph{Settings (Admin)} et clique sur \emph{Refresh FNDB}.
118
+Il te faut enfin mettre à jour la la liste de package de ta distribution. Pour Linux, ouvre un terminal et entre \texttt{sudo texhash}. Pour Mac, ouvre un terminal et entre \texttt{sudo mktexlsr}. Pour Windows, ouvre dans tous les programmes l'utilitaire \emph{Settings (Admin)} et clique sur \emph{Refresh FNDB}.
119 119
 
120 120
 De cette manière, l'installation n'est pas complète mais le package marchera très bien en utilisation. Il te manquera par contre les fichiers source commentés si tu veux le modifier.
121 121
 
122 122
 \subsection{Documentation}
123 123
 
124
-La documentation du package ets le fichier \texttt{polytechnique.pdf} qui se trouve entre autres. dans le dossier \emph{source} de l'archive extraite.
124
+La documentation du package est le fichier \texttt{polytechnique.pdf} qui se trouve entre autres dans le dossier \emph{source} de l'archive extraite.
125 125
 
126 126
 \end{document}

+ 61 - 24
source/polytechnique.dtx

@@ -88,6 +88,7 @@ LaTeX version 1999/12/01 or later.
88 88
 %</driver>
89 89
 % \fi
90 90
 %
91
+% %\changes{v1.3.4}{2016/01/12}{Correction de bugs, ajout du logo en en-tête, ajout du titre court en en-tête, compatibilité avec d'autres classes}
91 92
 %\changes{v1.3.3}{2015/07/04}{Correction de bugs, inversion des en-têtes exterieur/interieur}
92 93
 %\changes{v1.3.2}{2015/05/27}{Code réorganisé et installation facilitée}
93 94
 %\changes{v1.3.0}{2015/04/29}{Ajout des options oneside, twoside, sectionmark, chaptermark, markboth, pagenumber}
@@ -108,8 +109,9 @@ LaTeX version 1999/12/01 or later.
108 109
 %
109 110
 %\title{Le package \textsf{polytechnique}}
110 111
 %\subtitle{\fileversion{} datée du \filedate.}
111
-%\author{Denis \textsc{Merigoux}}
112
-%\logo{typographix.pdf}
112
+%\author{Denis \textsc{Merigoux} \\
113
+%        Clément \textsc{Durand}}
114
+%\logo[headers]{typographix.pdf}
113 115
 %
114 116
 %\maketitle
115 117
 %
@@ -133,20 +135,21 @@ LaTeX version 1999/12/01 or later.
133 135
 %
134 136
 %\subsection{Métadonnées du document}
135 137
 %
136
-%La page de titre est gérée entièrement par le package. Pour la définir, il faut signaler dans le préambule les métadonnées du document qui apparaîtront sur la page de titre, avec deux nouveaux champs optionnels |\subtitle| et |\logo| par rapport au \LaTeX{} standard :
138
+%La page de titre est gérée entièrement par le package. Pour la définir, il faut signaler dans le préambule les métadonnées du document qui apparaîtront sur la page de titre, avec deux nouveaux champs optionnels |\subtitle| et |\logo| par rapport au \LaTeX{} standard, et une modification de |\title|~:
137 139
 %\begin{itemize}
138 140
 %\item |\subtitle|\marg{sous-titre} où \meta{sous-titre} peut être sur plusieurs lignes séparées par des |\\| ;
139
-%\item |\logo|\marg{chemin} où \meta{chemin} est le chemin relatif vers le fichier d'un logo supplémentaire (entreprise, laboratoire, etc.) ; si le logo est dans le même dossier que le |.tex|, \meta{chemin} est le nom du fichier.
141
+%\item |\logo|\marg{chemin} où \meta{chemin} est le chemin relatif vers le fichier d'un logo supplémentaire (entreprise, laboratoire, etc.) ; si le logo est dans le même dossier que le |.tex|, \meta{chemin} est le nom du fichier. Si l'on écrit un document en recto-verso (voir section \ref{globaloptions} page \pageref{globaloptions}), on peut mettre ce logo dans les en-têtes en ajoutant l'option \emph{headers}~: |\logo|[\emph{headers}]\marg{chemin}.
142
+%\item |\title|\oarg{titre court}\marg{titre} où \emph{titre court} est facultatif. Il permet, si votre vrai titre est long et ne vous plaît pas dans les en-têtes, de mettre un titre court en en-tête.
140 143
 %\end{itemize}
141 144
 %Il est recommandé de recadrer au mieux l'image du logo pour qu'elle prenne les meilleures dimensions possibles sur la page. Le deuxième logo apparaîtra sur les deux pages de titre différentes (option |titlepage| ou |notitlepage|) dont il modifiera la présentation en conséquence.
142 145
 %Cela donne dans son préambule :
143 146
 %\begin{verbatim}
144
-%    \title{Le titre}
147
+%    \title[Le titre court (optionnel)]{Le titre}
145 148
 %    \subtitle{Le sous-titre (optionnel, enlever cette ligne sinon)}
146 149
 %    \author{L'auteur Prénom \textsc{Nom}
147
-%         (si plusieurs séparer par des \\)}
150
+%            (si plusieurs séparer par des \\)}
148 151
 %    \date{La date, enlever la ligne pour avoir la date du jour}
149
-%    %\logo{Chemin relatif vers le logo}
152
+%    %\logo[headers]{Chemin relatif vers le logo}
150 153
 %\end{verbatim}
151 154
 %
152 155
 %Puis rajouter après |\begin{document}| la commande |\maketitle|. Les champs |\title|, |\subtitle|, |\author| et |\date| peuvent être sur plusieurs lignes, c'est par exemple utile pour une liste d'auteurs. On passera alors à la ligne avec la commande |\\|.
@@ -158,8 +161,9 @@ LaTeX version 1999/12/01 or later.
158 161
 %    Coordinateur :&Jean Dupont&---&Tuteur :&Paul Martin
159 162
 %    \end{tabular}
160 163
 %    \\[\baselineskip]
161
-%    \begin{tabular}{cccc}
162
-%    Nom1&Nom2&Nom3\\%    Nom4&Nom5&Nom6
164
+%    \begin{tabular}{ccc}
165
+%    Nom1&Nom2&Nom3\\
166
+%    Nom4&Nom5&Nom6
163 167
 %    \end{tabular}
164 168
 %}
165 169
 %\end{verbatim}
@@ -169,7 +173,7 @@ LaTeX version 1999/12/01 or later.
169 173
 %\section{Options}
170 174
 %\label{options}
171 175
 %
172
-%\subsection{Options globales}
176
+%\subsection{Options globales}\label{globaloptions}
173 177
 %
174 178
 %Ces options peuvent être indiquées directement dans la déclaration de la classe du document, suivant la syntaxe habituelle : |\documentclass|\oarg{options globales}\marg{classe du document}. \meta{options globales} est une liste d'options séparées par des virgules, selon la syntaxe habituelle. Par exemple :
175 179
 %\begin{verbatim}
@@ -686,15 +690,15 @@ LaTeX version 1999/12/01 or later.
686 690
     \raisebox{\decalageverticalentete}
687 691
         {\begin{minipage}[b]{\largeurtitreentete}
688 692
             \scshape#1\textcolor{bleu303}
689
-            \polytitresave
693
+            \polytitrecourtsave
690 694
         \end{minipage}}
691 695
 }
692 696
 %    \end{macrocode}
693 697
 %\end{macro}
694 698
 %\begin{macro}{\enteteinterieur}
695 699
 %    \begin{macrocode}
696
-\newcommand{\enteteinterieur}{
697
-    \includegraphics[height=\hauteurlogohori]{\polylogohori}
700
+\newcommand{\enteteinterieur}[1]{
701
+    \includegraphics[height=\hauteurlogohori]{#1}
698 702
 }
699 703
 %    \end{macrocode}
700 704
 %\end{macro}
@@ -713,6 +717,20 @@ LaTeX version 1999/12/01 or later.
713 717
 }
714 718
 %    \end{macrocode}
715 719
 %\end{macro}
720
+%\begin{macro}{\enteteinterieurpair}
721
+%    \begin{macrocode}
722
+\newcommand{\enteteinterieurpair}{
723
+    \enteteinterieur{\polylogohori}
724
+}
725
+%    \end{macrocode}
726
+%\end{macro}
727
+%\begin{macro}{\enteteinterieurimpair}
728
+%    \begin{macrocode}
729
+\newcommand{\enteteinterieurimpair}{
730
+    \enteteinterieur{\polylogohori}
731
+}
732
+%    \end{macrocode}
733
+%\end{macro}
716 734
 %\begin{macro}{\entetes}
717 735
 %Comme l'en-tête contient le titre, on les active uniquement quand le titre est défini d'où cette forme de commande qui sera placée dans la commande |title| redéfinie.
718 736
 %    \begin{macrocode}
@@ -721,12 +739,12 @@ LaTeX version 1999/12/01 or later.
721 739
 %    \end{macrocode}
722 740
 %On definit un nouveau style d'en-tetes. Voir la documentation du package |titlesec| pour la syntaxe.
723 741
 %    \begin{macrocode}
724
-    \sethead[\enteteinterieur]% left even
742
+    \sethead[\enteteinterieurpair]% left even
725 743
             []% center even
726 744
             [\enteteexterieurpair]% right even
727 745
             {\enteteexterieurimpair}% left odd
728 746
             {}% center odd
729
-            {\enteteinterieur}% right odd
747
+            {\enteteinterieurimpair}% right odd
730 748
     \setfoot{}% left odd
731 749
              {\piedcentre}% center odd
732 750
              {}% right odd
@@ -773,7 +791,7 @@ LaTeX version 1999/12/01 or later.
773 791
 \renewcommand*{\subtitle}[1]{
774 792
     \renewcommand*{\polysoustitresave}{#1}
775 793
 %    \end{macrocode}
776
-%Si le sous-titre a éé défini, on met le booléen |subtitle| à vrai.
794
+%Si le sous-titre a été défini, on met le booléen |subtitle| à vrai.
777 795
 %    \begin{macrocode}
778 796
     \setboolean{subtitle}{true}
779 797
 }
@@ -785,11 +803,22 @@ LaTeX version 1999/12/01 or later.
785 803
 \newcommand{\polytitresave}{}
786 804
 %    \end{macrocode}
787 805
 %\end{macro}
788
-%\begin{macro}{\title}
789
-%Commande utilisée par l'utilisateur pour définit le titre. Comme les en-tête dépendent du titre, on les définit une fois qu'on connaît le titre.
806
+%\begin{macro}{\polytitrecourtsave}
807
+%Idem que |\polysoustitresave|.
790 808
 %    \begin{macrocode}
791
-\renewcommand*{\title}[1]{
792
-    \renewcommand*{\polytitresave}{#1}
809
+\newcommand{\polytitrecourtsave}{}
810
+%    \end{macrocode}
811
+%\end{macro}
812
+%\begin{macro}{\title}
813
+%Commande utilisée par l'utilisateur pour définir le titre. Comme les en-tête dépendent du titre, on les définit une fois qu'on connaît le titre.
814
+%    \begin{macrocode}
815
+\renewcommand*{\title}[2][{}]{
816
+    \renewcommand*{\polytitresave}{#2}
817
+    \ifthenelse{\equal{#1}{}}{
818
+        \renewcommand*{\polytitrecourtsave}{#2}
819
+    }{
820
+        \renewcommand*{\polytitrecourtsave}{#1}
821
+    }
793 822
     \entetes
794 823
 }
795 824
 %    \end{macrocode}
@@ -824,7 +853,15 @@ LaTeX version 1999/12/01 or later.
824 853
 %\begin{macro}{\logo}
825 854
 %Commande utilisée par l'utilisateur pour définir un deuxième logo.
826 855
 %    \begin{macrocode}
827
-\newcommand{\logo}[1]{
856
+\newcommand{\logo}[2][{}]{
857
+%    \end{macrocode}
858
+%On redefinit la variable |\enteteinterieurimpair| pour les en-têtes si l'utilisateur le souhaite.
859
+%    \begin{macrocode}
860
+    \ifthenelse{\equal{#1}{headers}}{
861
+        \renewcommand{\enteteinterieurimpair}{
862
+            \enteteinterieur{#2}
863
+        }
864
+    }{}
828 865
 %    \end{macrocode}
829 866
 %On redefinit la variable |\titlepagebottomline| pour l'option |titlepage|.
830 867
 %    \begin{macrocode}
@@ -842,7 +879,7 @@ LaTeX version 1999/12/01 or later.
842 879
             \raisebox{-0.5\height}{
843 880
                 \includegraphics[height=\hauteurlogovert,
844 881
                     width=1.5\largeurlogohori,
845
-                    keepaspectratio]{#1}
882
+                    keepaspectratio]{#2}
846 883
             }
847 884
         \end{minipage}
848 885
     }
@@ -856,7 +893,7 @@ LaTeX version 1999/12/01 or later.
856 893
 %    \end{macrocode}
857 894
 %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.
858 895
 %    \begin{macrocode}
859
-		\begin{minipage}{0.33\textwidth}
896
+            \begin{minipage}{0.33\textwidth}
860 897
                 \raisebox{-0.5\height}
861 898
 %    \end{macrocode}
862 899
 %Les logos sont cntrés verticalement grâce au |\raisebox|. |\height| contient la hauteur de la |minipage| en cours.
@@ -877,7 +914,7 @@ LaTeX version 1999/12/01 or later.
877 914
                     \flushright\raisebox{-0.5\height}
878 915
                     {\includegraphics[height=\hauteurlogovert,
879 916
                         width=1.75\largeurlogohori,
880
-                        keepaspectratio]{#1}
917
+                        keepaspectratio]{#2}
881 918
                     }
882 919
             \end{minipage} 
883 920
         \end{minipage}

+ 28 - 11
source/polytechnique.sty

@@ -263,11 +263,11 @@
263 263
     \raisebox{\decalageverticalentete}
264 264
         {\begin{minipage}[b]{\largeurtitreentete}
265 265
             \scshape#1\textcolor{bleu303}
266
-            \polytitresave
266
+            \polytitrecourtsave
267 267
         \end{minipage}}
268 268
 }
269
-\newcommand{\enteteinterieur}{
270
-    \includegraphics[height=\hauteurlogohori]{\polylogohori}
269
+\newcommand{\enteteinterieur}[1]{
270
+    \includegraphics[height=\hauteurlogohori]{#1}
271 271
 }
272 272
 \newcommand{\enteteexterieurpair}{
273 273
     \enteteexterieur{\flushright}
@@ -275,14 +275,20 @@
275 275
 \newcommand{\enteteexterieurimpair}{
276 276
     \enteteexterieur{}
277 277
 }
278
+\newcommand{\enteteinterieurpair}{
279
+    \enteteinterieur{\polylogohori}
280
+}
281
+\newcommand{\enteteinterieurimpair}{
282
+    \enteteinterieur{\polylogohori}
283
+}
278 284
 \newcommand{\entetes}{
279 285
     \newpagestyle{polytechnique}{
280
-    \sethead[\enteteinterieur]% left even
286
+    \sethead[\enteteinterieurpair]% left even
281 287
             []% center even
282 288
             [\enteteexterieurpair]% right even
283 289
             {\enteteexterieurimpair}% left odd
284 290
             {}% center odd
285
-            {\enteteinterieur}% right odd
291
+            {\enteteinterieurimpair}% right odd
286 292
     \setfoot{}% left odd
287 293
              {\piedcentre}% center odd
288 294
              {}% right odd
@@ -306,8 +312,14 @@
306 312
     \setboolean{subtitle}{true}
307 313
 }
308 314
 \newcommand{\polytitresave}{}
309
-\renewcommand*{\title}[1]{
310
-    \renewcommand*{\polytitresave}{#1}
315
+\newcommand{\polytitrecourtsave}{}
316
+\renewcommand*{\title}[2][{}]{
317
+    \renewcommand*{\polytitresave}{#2}
318
+    \ifthenelse{\equal{#1}{}}{
319
+        \renewcommand*{\polytitrecourtsave}{#2}
320
+    }{
321
+        \renewcommand*{\polytitrecourtsave}{#1}
322
+    }
311 323
     \entetes
312 324
 }
313 325
 \newcommand{\polyauthorsave}{}
@@ -319,7 +331,12 @@
319 331
     \renewcommand*{\polydatesave}{#1}
320 332
 }
321 333
 
322
-\newcommand{\logo}[1]{
334
+\newcommand{\logo}[2][{}]{
335
+    \ifthenelse{\equal{#1}{headers}}{
336
+        \renewcommand{\enteteinterieurimpair}{
337
+            \enteteinterieur{#2}
338
+        }
339
+    }{}
323 340
     \renewcommand{\titlepagebottomline}{
324 341
      \begin{minipage}{5\largeurlogohori}
325 342
          \centering
@@ -331,7 +348,7 @@
331 348
             \raisebox{-0.5\height}{
332 349
                 \includegraphics[height=\hauteurlogovert,
333 350
                     width=1.5\largeurlogohori,
334
-                    keepaspectratio]{#1}
351
+                    keepaspectratio]{#2}
335 352
             }
336 353
         \end{minipage}
337 354
     }
@@ -339,7 +356,7 @@
339 356
         \noindent%
340 357
         \begin{minipage}{\textwidth}
341 358
             \centering
342
-\begin{minipage}{0.33\textwidth}
359
+            \begin{minipage}{0.33\textwidth}
343 360
                 \raisebox{-0.5\height}
344 361
                     {\includegraphics[width=\largeurlogovert]
345 362
                         {\polylogovert}
@@ -355,7 +372,7 @@
355 372
                     \flushright\raisebox{-0.5\height}
356 373
                     {\includegraphics[height=\hauteurlogovert,
357 374
                         width=1.75\largeurlogohori,
358
-                        keepaspectratio]{#1}
375
+                        keepaspectratio]{#2}
359 376
                     }
360 377
             \end{minipage}
361 378
         \end{minipage}