Vous êtes sur la page 1sur 57

Documentation avancée en LATEX

Département de Mathématiques
Université A. Mira de Béjaia
Algérie.
TABLE DES MATIÈRES

1 Structure générale d’un document LATEX 1


1.1 Gestion des différents espacements à l’intérieur d’un document LATEX . . . . . . . . 1
1.1.1 L’indentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 L’espace interparagraphe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3 L’espace interligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.4 Les marges, l’espace en haut de page et l’espace en bas de page . . . . . . . 3
1.2 Mettre des traits horizontaux à l’intérieur d’un document LATEX . . . . . . . . . . . 3
1.2.1 Un trait horizontal simple . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2 Un trait horizontal d’une certaine largeur et d’une certaine épaisseur . . . . . 4
1.2.3 Un trait horizontal complétant une ligne de texte . . . . . . . . . . . . . . . 4
1.2.4 Un trait horizontal centré ou bien mis à droite . . . . . . . . . . . . . . . . 5
1.2.5 Un trait horizontal de couleur . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Ecrire un document ou une partie d’un document LATEX sur plusieurs colonnes . . . . 5
1.3.1 Ecrire un texte LATEX sur deux colonnes, remplies les unes après les autres . . 5
1.3.2 Ecrire un texte LATEX sur plusieurs colonnes, remplies équitablement . . . . . 7
1.4 Créer des en-têtes et des pieds de page personnalisés . . . . . . . . . . . . . . . . . 9
1.4.1 Le fonctionnement par défaut du style de page fancy . . . . . . . . . . . . . 9
1.4.2 Modification du style de page fancy pour créer ses propres en-têtes et pieds
de page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 Les notes en bas de page 20


2.1 Les types de numérotations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.1 Numérotation en chiffres romains . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.2 Numérotation en lettres latines . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.3 Numérotations à l’aide de symboles (autres les chiffres et les lettres) . . . . 20
2.2 Comment forcer une footnote à prendre un numéro voulu . . . . . . . . . . . . . . 21
2.3 Comment faire une footnote à l’intérieur de certains environnements . . . . . . . . . 21

i
3 Latex Mathématique 23
3.1 Les équations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.1 Equations courtes et moyennes . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.2 Equations longues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.3 Série d’équations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.1.4 Equations numérotées par une numérotation de notre choix . . . . . . . . . 25

4 Les couleurs 26

5 Les boites 29
5.1 Comment fabriquer des boites sans package particulier . . . . . . . . . . . . . . . . 29
5.1.1 Boites contenant un texte d’une ligne . . . . . . . . . . . . . . . . . . . . . 29
5.1.2 Boites contenant un paragraphe . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2 Boites avec le package fancybox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
5.2.1 Boites contenant un texte d’une ligne . . . . . . . . . . . . . . . . . . . . . 31
5.2.2 Boites contenant un paragraphe . . . . . . . . . . . . . . . . . . . . . . . . 31
5.3 Boites de couleurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5.4 Boites à titre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
5.5 Utilisation des boites pour empêcher certaines césures LATEX . . . . . . . . . . . . . 35
5.6 Le package framed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.6.1 Les différents environnements du package framed . . . . . . . . . . . . . . . 36
5.6.2 Comment redéfinir l’environnement leftbar . . . . . . . . . . . . . . . . . . 38

6 Les figures 41
6.1 Eléments de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
6.2 Comment modifier la taille d’une figure à insérer . . . . . . . . . . . . . . . . . . . 43
6.3 Comment mettre sa figure dans un cadre . . . . . . . . . . . . . . . . . . . . . . . 43
6.4 Insertion de figures d’extension autre que eps . . . . . . . . . . . . . . . . . . . . . 44
6.5 Insertion de plusieurs figures côte à côte . . . . . . . . . . . . . . . . . . . . . . . 45

7 Dessiner en utilisant le package PSTricks 49


7.1 Codes de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.2 Lignes, vecteurs et lignes brisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.3 Polygones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.4 Cercles, arcs de cercle et ellipses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

ii
CHAPITRE 1

STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

1.1 Gestion des différents espacements à l’intérieur d’un


document LATEX
En LATEX, les différents espaces spécifiques d’un document (marges, indentation, espace inter-
ligne, . . . etc) sont fixés par défaut. Cependant, ces espaces pourraient être modifiés à n’importe
quel endroit du document. Nous donnons dans ce qui suit les codes permettant de modifier ces
espaces.

1.1.1 L’indentation
Pour modifier l’indentation d’un document LATEX, à partir d’un certain endroit, on utilise le
code : \parindent=indentation voulue ou bien le code :

\setlength{\parindent}{indentation voulue}

Exemple : Le code :

\parindent=2cm
\par Les quaternions furent découverts en 1843 par le mathématicien irlandais
William Rowan Hamilton (1805-1865).

donne :

Les quaternions furent découverts en 1843 par le mathématicien irlandais William Rowan
Hamilton (1805-1865).

N.B : Le code \par signale que le texte qui le suit est un nouveau paragraphe. Sinon, il est bien
connu qu’en LATEX, un espace vertical est interprété comme un passage à un nouveau paragraphe.
Si l’on désire laisser un espace vertical dans notre document LATEX(pour l’aérer par exemple) sans
passer à un nouveau paragraphe, on utilise la commande \noindent qu’on mettra au début du
texte lequel on ne désire pas commencer par une indentation.
Notons par ailleurs que l’indentation par défaut d’un document LATEX est d’environ 6 mm.

1
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

1.1.2 L’espace interparagraphe


Si l’on désire modifier l’espace vertical se trouvant entre deux paragraphes consécutifs d’un
document LATEX, on utilise le code \parskip=espace voulu ou le code :

\setlength{\parskip}{espace voulu}

que l’on mettra à l’endroit à partir duquel on souhaite modifier l’espace interparagraphe.
Exemple : Le code :

\parskip=1.5cm
\par Les quaternions furent découverts en 1843 par le mathématicien irlandais
William Rowan Hamilton (1805-1865).
\par En faisant des calculs avec les nombres complexes, il s’intéressa à
l’interprétation géométrique de l’addition et de la multiplication dans le
plan (à 2 dimensions). Il se demanda, si avec des nombres hypercomplexes, on
ne pourrait pas obtenir des résultats analogues dans l’espace (à 3 dimensions).

donne :

Les quaternions furent découverts en 1843 par le mathématicien irlandais William Rowan Hamil-
ton (1805-1865).

En faisant des calculs avec les nombres complexes, il s’intéressa à l’interprétation géométrique de
l’addition et de la multiplication dans le plan (à 2 dimensions). Il se demanda, si avec des nombres
hypercomplexes, on ne pourrait pas obtenir des résultats analogues dans l’espace (à 3 dimensions).
N.B : L’espace interparagraphe par défaut d’un document LATEX est d’environ 1 pt.

1.1.3 L’espace interligne


Si l’on désire modifier l’espace interligne d’un document LATEX, c’est-à-dire l’espace vertical
séparant deux lignes consécutives, on utilise le code : \baselineskip=espace voulu ou le code :

\setlength{\baselineskip}{espace voulu}

que l’on mettra à l’endroit à partir duquel on souhaite modifier l’espace interligne.
Exemple : Le code :

\baselineskip=7mm
\par Durant de nombreuses années, Hamilton avait espéré trouver une forme de
multiplication satisfaisante pour les triplets de nombres réels avec de bonnes
propriétés. Ses recherches sont bien décrites par la célèbre anecdote avec son
fils. Peu de temps avant sa mort, il écrivit à son fils: \og Tous les matins,
alors que tu descendais pour prendre le petit déjeuner, tu me demandais:
Eh bien papa, est ce que tu peux multiplier les triplets? J’étais toujours
obligé de répondre, avec un triste hochement de t\^ete: ‘‘Non, je peux
seulement les additionner et les soustraire’’\fg. \\
Finalement, Hamilton a eu l’idée géniale de passer à une dimension de plus.
Il écrivit: ‘‘Ainsi naquit l’idée en moi d’admettre une quatrième dimension
pour calculer avec les triplets’’. Il aboutit aux quaternions.

2 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

donne :

Durant de nombreuses années, Hamilton avait espéré trouver une forme de multiplication sa-
tisfaisante pour les triplets de nombres réels avec de bonnes propriétés. Ses recherches sont bien
décrites par la célèbre anecdote avec son fils. Peu de temps avant sa mort, il écrivit à son fils :
« Tous les matins, alors que tu descendais pour prendre le petit déjeuner, tu me demandais : Eh
bien papa, est ce que tu peux multiplier les triplets ? J’étais toujours obligé de répondre, avec un
triste hochement de tête : “Non, je peux seulement les additionner et les soustraire” ».
Finalement, Hamilton a eu l’idée géniale de passer à une dimension de plus. Il écrivit : “Ainsi naquit
l’idée en moi d’admettre une quatrième dimension pour calculer avec les triplets”. Il aboutit aux
quaternions.
N.B : L’espace interligne par défaut d’un document LATEX est environ 5 mm.

1.1.4 Les marges, l’espace en haut de page et l’espace en bas de page


Pour modifier les marges et les espaces en haut et en bas de page d’un document LATEX, on
utilise le package geometry qu’on chargera à l’entête du document. Si l’on souhaite par exemple
que notre document ait comme espace en haut de page h, comme espace en bas de page b, comme
marge de gauche g et comme marge de droite d, on mettra à son entête le code :

\usepackage[top=h,bottom=b,left=g,right=d]{geometry}

Lorsque les marges de gauche et de droite souhaitées ont la même mesure m (ce qui est souvent le
cas), on pourra simplifier ce code en :

\usepackage[top=h,bottom=b,margin=m]{geometry}

Exemple : Le code :

\usepackage[top=1.5cm,bottom=1cm,margin=2cm]{geometry}

permet d’avoir sur notre document, un espace de haut de page de 1,5 cm, un espace de bas de page
de 1 cm et une marge de 2 cm (que ce soit la marge de gauche ou celle de droite).

1.2 Mettre des traits horizontaux à l’intérieur d’un docu-


ment LATEX
Quand on rédige des documents LATEX d’un certain type (CV, sujet d’examen, série de TD,
. . . etc), on aura souvent besoin de mettre, dans certains endroits, des traits horizontaux (comme
par exemple mettre un titre entre deux traits horizontaux ou mettre un demi-trait horizontal pour
marquer la fin du document ou de l’une de ses parties). Dans cette section, on donnera les codes
permettant de générer les différents types de traits horizontaux.

1.2.1 Un trait horizontal simple


En LATEX, pour générer un trait horizontal simple, on utilise le code : \hrule. Ce code donne
ceci :

3 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

1.2.2 Un trait horizontal d’une certaine largeur et d’une certaine


épaisseur
• Pour générer un trait horizontal d’une largeur ℓ, on utilise le code :

\hrule width ℓ

Par exemple, le code :

\hrule width 5cm

donne :

• Pour générer un trait horizontal d’une épaisseur (c’est-à-dire hauteur) e, on utilise le code :

\hrule height e

Par exemple, le code :

\hrule height 1pt

donne :

• Pour générer un trait horizontal d’une largeur ℓ et d’une épaisseur e, on utilise le code :

\hrule width ℓ height e

Par exemple, le code :

\hrule width 4cm height 2pt

donne :

1.2.3 Un trait horizontal complétant une ligne de texte


• Pour compléter une ligne de texte (lorsqu’elle est incomplète bien sûr) par un trait horizontal, on
utilise le code : \hrulefill. Par exemple, le code :

C’est génial la programmation en VBA \hrulefill

donne :
C’est génial la programmation en VBA
• Pour compléter une ligne de texte (lorsqu’elle est incomplète bien sûr) par des points de suspension,
on utilise le code \dotfill. Par exemple, le code :

C’est génial la programmation en VBA \dotfill

donne :
C’est génial la programmation en VBA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

1.2.4 Un trait horizontal centré ou bien mis à droite


• Pour générer un trait horizontal centré (par exemple de largeur 1/3 de la largeur d’une ligne de
texte), on utilise le code :
\hspace*{0.33\textwidth} \hrulefill \hspace*{0.33\textwidth}
(après un retour à la ligne). Ce qui donne ceci :

• Pour générer un trait horizontal mis à droite (par exemple de largeur 1/3 de la largeur d’une ligne
de texte), on utilise le code :
\hspace*{0.66\textwidth} \hrulefill
(après un retour à la ligne). Ce qui donne ceci :

1.2.5 Un trait horizontal de couleur


Pour générer un trait horizontal de couleur, il suffit d’utiliser le code :
{\color{la couleur voulue} \hrule ...}
(N’oubliez pas de charger l’un des deux packages color ou xcolor au préambule du document).
Par exemple, pour générer un trait horizontal de couleur magenta, de largeur 8 cm et d’épaisseur 1
pt, on tape le code :
{\color{magenta} \hrule width 8cm height 1pt}
Ce qui donne :

1.3 Ecrire un document ou une partie d’un document


LATEX sur plusieurs colonnes
1.3.1 Ecrire un texte LATEX sur deux colonnes, remplies les unes après
les autres
Présenter un document LATEX en entier sur deux colonnes
Pour écrire un document LATEX en entier sur deux colonnes qui vont être remplies les unes après
les autres, il suffit d’intégrer l’option twocolumn dans la classe du document en question. On tapera
par exemple au préambule du document :
\documentclass[twocolumn]{article}
ou encore :
\documentclass[a4paper,twocolumn,12pt]{article}
. . . etc.
Il est à noter qu’avec cette option, les deux colonnes de chaque page du document seront remplies les
unes après les autres. Autrement dit, le remplissage des colonnes n’est pas équiparti. On peut ainsi
avoir, dans une même page, la colonne de gauche beaucoup plus grande (en texte) que la colonne
de droite. Plus loin, on verra comment faudrait-il procéder pour obtenir un remplissage équiparti de
colonnes.

5 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

Présenter une partie d’un document LATEX sur deux colonnes


Pour agir localement, c’est-à-dire écrire seulement une partie d’un document LATEX sur deux
colonnes (remplies les unes après les autres), il n’est pas nécessaire d’intégrer l’option twocolumn à
la classe du document mais il suffit simplement de taper la commande \twocolumn juste avant le
texte que l’on souhaite présenter sur deux colonnes. Une autre alternative consiste à taper plutôt :
\twocolumn{Le texte que l’on souhaite présenter sur deux colonnes}
ou encore :
\begin{twocolumn}
Le texte que l’on souhaite présenter sur deux colonnes
\end{twocolumn}
Si l’on désire présenter un texte sur deux colonnes (remplies les unes après les autres) mais avec un
titre que l’on souhaite mettre sur une seule colonne, on tapera :
\twocolumn[Le titre sur une colonne]{Le texte sur deux colonnes}
ou encore :
\begin{twocolumn}[Le titre sur une colonne]
Le texte sur deux colonnes
\end{twocolumn}
Ainsi, le code :
\twocolumn[\section{Le titre de votre section}]{Le texte de votre section}
mettra le titre de votre section sur une seule colonne et son texte sur deux colonnes (remplies les
unes après les autres). Il en est de même pour le code :
\begin{twocolumn}[\section{Le titre de votre section}]
Le texte de votre section
\end{twocolumn}
Remarque : L’environnement twocolumn nous offre une meilleur lisibilité du texte source (fichier
tex) mais à part cela, il n’a aucun autre intérêt.

Présenter certaines parties d’un document LATEX sur une colonne et d’autres parties sur
deux colonnes
Si l’on souhaite maintenant présenter certaines parties d’un document LATEX sur une colonne et
d’autres parties sur deux colonnes (remplies les unes après les autres), on utilisera les commandes :
\onecolumn et \twocolumn. On écrira par exemple :
\twocolumn Un texte sur deux colonnes
\onecolumn Un autre texte sur une colonne
\twocolumn Un autre texte sur deux colonnes
..
.
etc
Le grand inconvénient de ces deux commandes \onecolumn et \twocolumn réside dans le fait qu’à
chaque fois que l’une d’elle est utilisée, elle entraîne automatiquement un changement de page. À
ma connaissance, cet inconvénient de taille est incontournable !
Remarque importante : Si l’on souhaite présenter un document LATEX entièrement sur deux
colonnes, il est nettement préférable d’intégrer l’option twocolumn à la classe du document que
d’utiliser la commande \twocolumn au début du document. En effet, la commande \twocolumn
est tellement fragile qu’elle pourrait entraîner des anomalies comme la suivante : « certaines lignes
de la colonne gauche arrivent à toucher les lignes d’en face de la colonne droite d’une même page
du document ».

6 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

Mettre un trait vertical pour séparer les colonnes d’un texte LATEX présenté sur deux
colonnes
Pour faire apparaitre un trait vertical séparant les deux colonnes d’un texte LATEX (écrit sur deux
colonnes), on devra taper, juste avant le texte en question, le code :
\columnseprule=épaisseur voulue pour le trait vertical
ou le code :
\setlength{\columnseprule}{épaisseur voulue pour le trait vertical}
Par exemple, le code :
\columnseprule=0.1pt
\twocolumn Il était une fois ...
mettra notre texte « Il était une fois . . . » sur deux colonnes qu’il sépare avec un trait vertical
d’épaisseur 0,1 pt (un trait fin).
N.B : Lorsqu’un document LATEX est entièrement écrit sur deux colonnes (via l’option twocolumn,
intégrée à la classe du document), il suffit de mettre le code \columnseprule=épaisseur voulue
juste après \begin{document} pour séparer les deux colonnes de chaque page du document par
un trait vertical d’une épaisseur voulue.

Forcer le passage à une nouvelle colonne ou à une nouvelle page


Supposons donnée une partie d’un document LATEX écrite sur deux colonnes.
Alors, pour forcer le passage à une nouvelle colonne à un endroit voulu, il suffit de taper à cet
endroit le code \newpage. Noter que ce code est habituellement réservé pour forcer le passage à
une nouvelle page mais seulement dans ce cas (d’un texte écrit sur deux colonnes), il force le passage
à une nouvelle colonne plutôt qu’à une nouvelle page.
Ainsi, en étant sur une colonne de gauche, pour forcer le passage à une nouvelle page, on doit taper
le code \newpage~\newpage (et non pas \newpage ou \newpage\newpage).

1.3.2 Ecrire un texte LATEX sur plusieurs colonnes, remplies équitable-


ment
Le package multicol (qu’on chargera au préambule d’un document LATEX via la commande
\usepackage{multicol}) définit l’environnement multicols qui permet de présenter une partie
d’un document LATEX sur plusieurs colonnes (10 colonnes au maximum). On tapera par exemple :
\begin{multicols}{3}
Il était une fois ...
\end{multicols}
pour présenter notre texte « Il était une fois . . . » sur 3 colonnes, remplies équitablement.
L’importance de cet environnement est qu’il répartit le texte qu’il détient équitablement sur toutes
les colonnes, et ceci même lorsque la page contenant le texte en question n’est pas complètement
remplie.
L’environnement multicols nous permet également d’obtenir un texte réparti équitablement sur
plusieurs colonnes avec un titre écrit sur une colonne. Pour ce faire, on utilise le code :
\begin{multicols}{Nombre de colonnes voulu}[Le titre sur une colonne]
Notre texte
\end{multicols}

7 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

Bien entendu, le titre en question pourrait être une section, une sous-section, . . . etc.
Pour information, c’est l’environnement multicols qu’on utilise pour rédiger (en LATEX) les articles
de journaux.
Enfin, pour écrire une partie d’un document LATEX sur un nombre n de colonnes (1 ≤ n ≤ 10),
remplies équitablement, et faire apparaitre des traits verticaux d’épaisseur e séparant chaque deux
colonnes consécutives, on devrait taper (juste avant l’environnement multicols) l’un des deux codes
équivalents :

\columnseprule=e

ou

\setlength{\columnseprule}{e}

Exemple : Le code complet 1 :

\documentclass[a4paper,12pt]{article}
\usepackage[T1]{fontenc} % pour avoir des caractères en codage T1
\usepackage[latin1]{inputenc} % pour gérer les accents
\usepackage{multicol}
\begin{document}
\thispagestyle{empty}
\columnseprule=0.1pt
\begin{multicols}{4}[\section*{De bonnes raisons pour enseigner l’arithmétique}]
Il n’y a pas deux branches des mathématiques qui présentent un plus grand
contraste que l’arithmétique et la théorie des nombres.\\
Le caractère de grande généralité et de simplicité de ses règles rend
l’arithmétique accessible à l’esprit le moins ouvert.\\
Par contre, la théorie des nombres est de beaucoup la plus difficile des
sciences mathématiques. Sans doute, l’exposé de ses problèmes est si simple
qu’un enfant peut comprendre de quoi il s’agit; mais les méthodes employées
sont si particulières qu’il faut une adresse insoupcconnée et une habileté
consommée pour découvrir la voie qui permet d’aborder ces problèmes. Des
propositions tenues pour vraies pendant des siècles ont été ultérieurement
reconnues fausses, et actuellement il existe des problèmes qui ont épuisé
toutes les capacités des plus grands mathématiciens et restent encore sans
solution.\\
La théorie des nombres est la branche des mathématiques qui a trouvé le plus
petit nombre d’applications; non seulement elle est restée bien loin de toute
influence sur le progrès technique, mais dans le domaine des mathématiques
pures, elle est toujours restée isolée, n’ayant que de vagues liaisons avec
le fond général de la science \dots
\end{multicols}
\end{document}

donne :
1. Le texte contenu dans l’environnement multicols est dû à Tobias Dantzig (Le nombre langage de la
science, 1974).

8 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

De bonnes raisons pour enseigner l’arithmétique


Il n’y a pas deux coup la plus dif- permet d’aborder ématiques qui a
branches des math- ficile des sci- ces problèmes. trouvé le plus
ématiques qui ences mathéma- Des propositions petit nombre
présentent un plus tiques. Sans doute, tenues pour vraies d’applications; non
grand contraste l’exposé de ses pendant des siècles seulement elle est
que l’arithmétique problèmes est si ont été ultérieure- restée bien loin de
et la théorie des simple qu’un en- ment reconnues toute influence sur
nombres. fant peut com- fausses, et actuelle- le progrès tech-
Le caractère de prendre de quoi ment il existe des nique, mais dans
grande généralité il s’agit; mais problèmes qui ont le domaine des
et de simplicité les méthodes em- épuisé toutes les mathématiques
de ses règles rend ployées sont si capacités des plus pures, elle est
l’arithmétique ac- particulières qu’il grands mathémati- toujours restée
cessible à l’esprit faut une adresse ciens et restent en- isolée, n’ayant
le moins ouvert. insoupçonnée et core sans solution. que de vagues li-
Par contre, la une habileté con- La théorie des aisons avec le fond
théorie des nom- sommée pour dé- nombres est la général de la sci-
bres est de beau- couvrir la voie qui branche des math- ence . . .

1.4 Créer des en-têtes et des pieds de page personnalisés


Le moyen le plus simple pour créer ses propres en-têtes et pieds de page consiste à utiliser le package
fancyhdr que l’on chargera au préambule du document Latex via la commande :

\usepackage{fancyhdr}

Le chargement de ce package seul n’entraîne ni une en-tête particulière ni un pied de page particulier.
C’est par contre le style de page qui donnera à un document Latex une en-tête et un pied de page
particuliers.
Pour définir son propre style de page (c’est-à-dire sa propre en-tête et son propre pied de page),
nous devons d’abord charger le style de page fancy via la commande :

\pagestyle{fancy}

que l’on mettra dans le préambule ou dans le corps du document (à l’endroit à partir duquel on
souhaite adopté le style de page fancy) ; ensuite modifier ce style aux endroits voulus du document
par des commandes que nous allons détailler ci-dessous.
Avant tout, nous allons expliquer comment fonctionne le style de page fancy par défaut.

1.4.1 Le fonctionnement par défaut du style de page fancy


Le style de page fancy crée des en-têtes particulières qui dépendent en fait de la classe du document
(article, report ou book) et du mode du document (oneside ou twoside). Pour ce qui concerne les 3
types de classes : article, report et book d’un document Latex, ils sont bien connus et nous jugeons
inutile de les rappeler en détail ; juste en deux mots : la classe article est utilisée pour rédiger des
articles alors que les deux classes report et book sont utilisées pour rédiger des mémoires de thèse,
des livres, . . . etc. En revanche les modes oneside et twoside d’un document Latex nécessitent un
éclaircissement.

9 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

Le mode oneside :
C’est le mode “recto”. Le rôle de ce mode est d’attribuer à toutes les pages d’un document Latex
la même en-tête et le même pied de page.

Le mode twoside :
C’est le mode “recto-verso”. Le rôle de ce mode est d’attribuer aux pages d’un document Latex des
entêtes et des pieds de page différents selon leur parité. Plus précisément, il attribue aux pages
paires la même en-tête et le même pied de page et aux pages impaires aussi la même en-tête et le
même pied de page. Ainsi, une page impaire (recto) aura une en-tête et un pied de page différents
de ceux d’une page paire (verso).
Le mode que l’on choisit pour rédiger son document Latex doit être déclaré comme argument
(optionnel) de la classe du document. On tapera par exemple :

\documentclass[a4paper,twoside,12pt]{report}

N.B : Si on ne déclare pas le mode d’un document Latex, il sera attribué par défaut à ce document
le mode oneside s’il est de classe article ou report et le mode twoside s’il est de classe book.
L’en-tête par défaut du style de page fancy est décrite dans ce qui suit :

1. Pour la classe article :


(a) Pour le mode oneside : On verra apparaître un trait horizontal au dessus duquel
figure : la section courante à droite et la sous-section courante à gauche.
(b) Pour le mode twoside : On verra apparaître un trait horizontal au dessus duquel
figure :
Pour les pages paires : la section courante à droite et la sous-section courante
à gauche.
Pour les pages impaires : la section courante à gauche et la sous-section cou-
rante à droite.
2. Pour les classes report et book :
(a) Pour le mode oneside : On verra apparaître un trait horizontal au dessus duquel
figure : le chapitre courant à droite et la section courante à gauche.
(b) Pour le mode twoside : On verra apparaître un trait horizontal au dessus duquel
figure :
Pour les pages paires : le chapitre courant à droite et la section courante à
gauche.
Pour les pages impaires : le chapitre courant à gauche et la section courante
à droite.

Remarques :
– Dans l’en-tête par défaut du style de page fancy, les titres figurant au dessus du trait horizontal
sont écrits en majuscules et en italique.
– Pour ce qui concerne le pied de page, le style fancy n’ajoute rien à ce qui est standard, à savoir
la numérotation de la page courante au centre du bas de page.
Nous allons maintenant expliquer comment modifier le style de page fancy pour créer nos propres
en-têtes et nos propres pieds de page.

10 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

1.4.2 Modification du style de page fancy pour créer ses propres en-
têtes et pieds de page
Modification du trait horizontal de l’en-tête
Les commandes à utiliser pour supprimer ou rendre plus ou moins épais ou plus ou moins long le
trait horizontal de l’en-tête sont :
\renewcommand{\headrulewidth}{0pt}
pour supprimer le trait en question ;
\renewcommand{\headrulewidth}{e}
pour modifier son épaisseur en e (où e est une mesure donnée en pt, mm, . . . etc) et
\renewcommand{\headheight}{ℓ}
pour modifier sa longueur en ℓ (où ℓ est une mesure donnée en cm, mm, pt, . . . etc).

N.B : Ces codes pourraient être tapés aussi bien dans le préambule du document que dans le
corps du document mais dans les deux cas, ils agissent sur l’ensemble du document et non pas
à partir de l’endroit où ils étaient tapés. Il est donc préférable de les taper au préambule du
document.
Il est aussi possible de modifier l’espacement entre l’en-tête et le corps du document en tapant (dans
le préambule du document) l’un des deux codes équivalents suivants :
\setlength{\headsep}{esp} ou \headsep=esp,
où esp est l’espacement voulu, qui est une mesure qu’on devrait fournir en pt, cm, mm, . . . etc.
Enfin, on peut carrément remplacer le trait horizontal de l’en-tête par tout autre chose de notre
choix en utilisant le code plus général :

\renewcommand{\headrule}{ce qu’on souhaite mettre à la place du trait horizontal


de l’en-tête}
Ce code nous permet en particulier de modifier la couleur du trait horizontal de l’en-tête qui est
noire par défaut. En effet, si l’on souhaite par exemple changer cette couleur par la rouge, il suffira
de taper (dans le préambule du document) :
\renewcommand{\headrule}{\color{red} \hrule}
On peut même spécifier par ce même code l’épaisseur et la longueur du trait horizontal de l’en-
tête. Par exemple, si l’on souhaite modifier à la fois la couleur (en verte), l’épaisseur (en 1pt) et la
longueur (en 8cm) du trait horizontal de l’en-tête, on tapera (dans le préambule du document) :
\renewcommand{\headrule}{{\color{green} \hrule height 1pt width 8cm}}
En ayant un peu d’imagination, on peut même fabriquer des en-têtes originales (voir qui sortent de
l’ordinaire) en remplaccant le trait horizontal de l’en-tête par quelque chose d’autre. Pour illustration,
nous donnons juste les deux exemples suivants :
Exemple 1 : Nous souhaitons avoir à la place du trait horizontal de l’en-tête deux traits horizontaux
simples, très proches l’un de l’autre. L’idée pour réaliser ce souhait consiste à se servir du package
ulem qui permet de faire un double soulignement professionnel d’un texte voulu via la commande
\uuline{le texte voulu}.
Il faudrait donc charger préalablement le package ulem au préambule du document ; ensuite taper
(dans le préambule du document) le code :

11 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

\renewcommand{\headrule}{\vspace{-3mm} \uuline{\hspace{\textwidth}}}

Exemple 2 : Nous souhaitons avoir à la place du trait horizontal de l’en-tête un trait horizontal
ondulé (comme ::::::). L’idée est la même que celle de l’exemple précédent ; elle consiste à utiliser
le package ulem qui permet de souligner un texte donné par un trait ondulé via la commande
\uwave{le texte voulu}. Après avoir chargé le package ulem au préambule du document, on
devrait (pour réaliser notre souhait) taper (dans le préambule du document) le code :

\renewcommand{\headrule}{\vspace{-3mm} \uwave{\hspace{\textwidth}}}

Création de sa propre en-tête et de son propre pied de page


La création de sa propre en-tête et de son propre pied de page se fait en deux temps :
– On supprime d’abord l’en-tête et le pied de page adoptés par défaut par le style fancy.
– Ensuite, on définit sa propre en-tête et son propre pied de page.
Pour supprimer l’en-tête et/ou le pied de page adoptés par le style fancy, on procède comme suit :
1. Pour supprimer à la fois l’en-tête et le pied de page du style fancy (c’est-à-dire les titres
figurant au dessus du trait horizontal de chaque page et la numérotation de chaque page), on
tapera la commande :
\fancyhf{}
(à placer dans le préambule ou dans le corps du document).
2. Pour supprimer juste l’en-tête du style fancy (c’est-à-dire les titres figurant au dessus du trait
horizontal de chaque page), on tapera la commande :
\fancyhead{}
(à placer dans le préambule ou dans le corps du document).
3. Pour supprimer juste le pied de page du style fancy (c’est-à-dire la numérotation de chaque
page), on tapera la commande :
\fancyfoot{}
(à placer dans le préambule ou dans le corps du document).
Une fois que l’on a supprimé l’en-tête et/ou le pied de page par défaut du style fancy, on pourra
définir sa propre en-tête et son propre pied de page en procédant de la faccon suivante :
1. Pour les documents de mode oneside : On tapera dans le préambule ou dans le corps
du document ce qui suit :
(a) \lhead{ce qu’on désire mettre en haut-à gauche de chaque page}
(b) \rhead{ce qu’on désire mettre en haut-à droite de chaque page}
(c) \chead{ce qu’on désire mettre en haut-au centre de chaque page}
(d) \lfoot{ce qu’on désire mettre en bas-à gauche de chaque page}
(e) \rfoot{ce qu’on désire mettre en bas-à droite de chaque page}
(f) \cfoot{ce qu’on désire mettre en bas-au centre de chaque page}
2. Pour les documents de mode twoside : On dispose de deux manières différentes pour
réaliser sa mise en page :
1ère manière : On tapera dans le préambule ou dans le corps du document ce qui suit :
(a) \lhead[ce qu’on désire mettre en haut-à gauche des pages paires]
{ce qu’on désire mettre en haut-à gauche des pages impaires}
Attention : il n’y a pas de saut de ligne dans ce code ainsi que dans ceux qui vont
suivre.

12 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

(b) \rhead[ce qu’on désire mettre en haut-à droite des pages paires]
{ce qu’on désire mettre en haut-à droite des pages impaires}
(c) \chead[ce qu’on désire mettre en haut-au centre des pages paires]
{ce qu’on désire mettre en haut-au centre des pages impaires}
(d) \lfoot[ce qu’on désire mettre en bas-à gauche des pages paires]
{ce qu’on désire mettre en bas-à gauche des pages impaires}
(e) \rfoot[ce qu’on désire mettre en bas-à droite des pages paires]
{ce qu’on désire mettre en bas-à droite des pages impaires}
(f) \cfoot[ce qu’on désire mettre en bas-au centre des pages paires]
{ce qu’on désire mettre en bas-au centre des pages impaires}
2nde manière : On tapera dans le préambule ou dans le corps du document ce qui suit :
(a) \fancyhead[LO]{ce qu’on désire mettre en haut-à gauche des pages impaires}
N.B : LO = Left-Odd = à gauche-impaire.
(b) \fancyhead[LE]{ce qu’on désire mettre en haut-à gauche des pages paires}
N.B : LE = Left-Even = à gauche-paire.
(c) \fancyhead[RO]{ce qu’on désire mettre en haut-à droite des pages impaires}
N.B : RO = Right-Odd = à droite-impaire.
(d) \fancyhead[RE]{ce qu’on désire mettre en haut-à droite des pages paires}
N.B : RE = Right-Even = à droite-paire.
(e) \fancyhead[CO]{ce qu’on désire mettre en haut-au centre des pages impaires}
N.B : CO = Center-Odd = au centre-impaire.
(f) \fancyhead[CE]{ce qu’on désire mettre en haut-au centre des pages paires}
N.B : CE = Center-Even = au centre-paire.
(g) \fancyfoot[LO]{ce qu’on désire mettre en bas-à gauche des pages impaires}
(h) \fancyfoot[LE]{ce qu’on désire mettre en bas-à gauche des pages paires}
(i) \fancyfoot[RO]{ce qu’on désire mettre en bas-à droite des pages impaires}
(j) \fancyfoot[RE]{ce qu’on désire mettre en bas-à droite des pages paires}
(k) \fancyfoot[CO]{ce qu’on désire mettre en bas-au centre des pages impaires}
(l) \fancyfoot[CE]{ce qu’on désire mettre en bas-au centre des pages paires}
Remarque : Si, par exemple, on désire mettre le même titre en haut-à droite de chaque
page (peu importe sa parité), on peut taper simplement le code :
\rhead{le titre voulu}
ou encore :
\fancyhead[RO,RE]{le titre voulu}

Une importante numérotation de page :


Lorsqu’on rédige un CV, une série de TD ou tout autre document latex comportant peu de pages,
il est souvent souhaitable de numéroter ses pages comme suit :
Le numéro de la page / Le nombre total de pages
Ainsi, si le document latex dont il s’agit contient n pages, ces pages seront numérotées par :
1/n, 2/n, . . . , n/n.
Pour ce faire, on doit d’abord charger au préambule du document le package lastpage, via la com-
mande :

13 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

\usepackage{lastpage}

Noter que ce package retient des informations sur la dernière page du document ; en particulier son
numéro qui n’est rien d’autre que le nombre total des pages du document et dont on a besoin ici.
Ensuite, dans le préambule ou dans le corps du document, on tapera le code suivant :

\cfoot{\thepage/\pageref{LastPage}}

si l’on souhaite que cette numérotation figure en bas-au centre de chaque page.

Les commandes Latex permettant d’imprimer les numéros et les intitulés du chapitre,
section et sous-section en cours :
1. Les commandes Latex permettant d’imprimer les numéros des titres courants :
• La commande permettant d’imprimer le numéro du chapitre courant d’un document Latex (de
classe book ou report) est : \thechapter.
• La commande permettant d’imprimer le numéro de la section (resp. sous-section) courante d’un
document Latex (de classe book, report ou article) est : \thesection (resp. \thesubsection).
2. Les commandes Latex permettant d’imprimer les intitulés des titres courants :
a) Pour les classes report et book :
• Les commandes \leftmark et \rightmark permettent d’imprimer respectivement les intitulés
du chapitre courant et de la section courante. Ces intitulés vont apparaître sous la forme :

CHAPITRE n. INTITULÉ DU CHAPITRE

(pour le chapitre numéro n) et

n.m. INTITULÉ DE LA SECTION

(pour la section numéro m du chapitre numéro n).


Noter que ces intitulés sont ceux de la table des matières 2 , convertis en écriture en lettres majuscules.
• Si l’on souhaite que ces intitulés ne soient pas convertis en écriture en lettres majuscules et ne
soient pas précédés de leurs numéros mais soient exactement tel qu’ils apparaissent dans la table
des matières, on ajoutera au préambule du document Latex (après la définition de son en-tête et
jamais avant) les deux codes :

\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{#1}}

Noter que les commandes \chaptermark et \sectionmark, lorsqu’elles sont utilisées, offrent res-
pectivement aux commandes \leftmark et \rightmark ce qu’elles devront imprimer (voir le pro-
chain item).
• Si l’on souhaite maintenant que les commandes \leftmark et \rightmark impriment autre
chose que ce qui apparaît dans la table des matières, on devra ajouter juste après (resp. juste avant)
l’introduction du chapitre (resp. section) dont il s’agit, c’est-à-dire juste après (resp. juste avant)
\chapter{...} (resp. \section{...}), le code :
\chaptermark{le titre que l’on désire imprimer avec la commande \leftmark}
(resp. \sectionmark{le titre que l’on désire imprimer avec la commande \rightmark}).
Dans cette situation, l’impression donnera les titres que nous avons choisi, précédés des numéros
2. Il est possible qu’un chapitre (section, sous-section, . . .) apparaisse sous un certain nom dans la table des
matières et sous un autre nom dans le corps du document.

14 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

des chapitres (resp. sections) et convertis en écriture en lettres majuscules.


• Pour aller encore plus loin, on peut souhaiter que les commandes \leftmark et \rightmark im-
priment exactement ce qu’on écrit entre les accolades des commandes \chaptermark et \sectionmark
(y compris si l’on souhaite une écriture en italique, en gras, en couleurs, . . . etc). Pour ce faire,
il suffira d’ajouter au préambule du document Latex (après la définition de son en-tête et jamais
avant) les codes :
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
(pour la gestion des intitulés de chapitres) et :
\renewcommand{\sectionmark}[1]{\markright{#1}}
(pour la gestion des intitulés de sections).
Un exemple plus compliqué :
Dans un document Latex de classe report et de mode oneside, on souhaite avoir comme en-tête un
trait horizontal simple au dessus duquel figurera :
À gauche : L’intitulé du chapitre courant, écrit sous la forme :
Chap n. Intitulé du chapitre
(en couleur rouge).
À droite : L’intitulé de la section courante, écrit sous la forme :
Sec n.m. Intitulé de la section
(en couleur verte).
Pour ce faire, il faudrait d’abord définir l’en-tête souhaitée au préambule du document par le code :
\pagestyle{fancy}
\fancyhead{}
\lhead{\leftmark}
\rhead{\rightmark}
(sans oublier bien sûr de charger préalablement le package fancyhdr).
Ensuite, juste après ceci et pas avant (toujours dans le préambule du document), redéfinir les deux
commandes \chaptermark et \sectionmark par :
\renewcommand{\chaptermark}[1]{\markboth{{\color{red} Chap \thechapter. #1}}{}}
\renewcommand{\sectionmark}[1]{\markright{{\color{green} Sec \thesection. #1}}}

Ainsi programmé, les intitulés des chapitres et sections qui apparaîtront dans l’en-tête du document
seront exactement ceux donnés par les commandes \chaptermark et \sectionmark lorsque celles-
ci sont utilisées ; sinon ceux de la table des matières.
b) Pour la classe article :
• Les commandes \leftmark et \rightmark permettent d’imprimer respectivement les intitulés
de la section courante et de la sous-section courante. Ces intitulés vont apparaître sous la forme :

n INTITULÉ DE LA SECTION

(pour la section numéro n) et

n.m Intitulé de la sous-section

(pour la sous-section numéro m de la section numéro n).


Noter que ces intitulés sont ceux de la table des matières, convertis en écriture en lettres majuscules
pour les sections et laissés tels quels pour les sous-sections.

15 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

• Si l’on souhaite que ces intitulés ne soient ni précédés de leurs numéros ni convertis en écriture en
lettres majuscules (pour les sections) mais soient exactement tels qu’ils apparaissent dans la tables
des matières, on ajoutera au préambule du document Latex (après la définition de son en-tête et
jamais avant) les deux codes :

\renewcommand{\sectionmark}[1]{\markboth{#1}{}}
\renewcommand{\subsectionmark}[1]{\markright{#1}}

Noter que les commandes \sectionmark et \subsectionmark, lorsqu’elles sont utilisées, offrent
respectivement aux commandes \leftmark et \rightmark ce qu’elles devront imprimer (voir le
prochain item).
• Si l’on souhaite maintenant que les commandes \leftmark et \rightmark impriment autre chose
que ce qui apparaît dans la table des matières, on devra ajouter juste après (resp. juste avant) l’in-
troduction de la section (resp. sous-section) dont il s’agit, c’est-à-dire juste après (resp. juste avant)
\section{...} (resp. \subsection{...}), le code :
\sectionmark{le titre que l’on désire imprimer avec la commande \leftmark}
(resp. \subsectionmark{le titre que l’on désire imprimer avec la commande \rightmark}).
Dans cette situation, l’impression donnera les titres que nous avons choisi, précédés des numéros des
sections (resp. sous-sections) concernées. Ces titres sont, en outre, convertis en écriture en lettres
majuscules lorsqu’ils concernent des sections.
• Pour aller encore plus loin, on peut souhaiter que les commandes \leftmark et \rightmark im-
priment exactement ce qu’on écrit entre les accolades des commandes \sectionmark et \subsectionmark
(y compris si l’on souhaite une écriture en italique, en gras, en couleurs, en miniscules, . . . etc).
Pour ce faire, il suffira d’ajouter au préambule du document Latex (après la définition de son en-tête
et jamais avant) les codes :
\renewcommand{\sectionmark}[1]{\markboth{#1}{}}
(pour la gestion des intitulés de sections) et :
\renewcommand{\subsectionmark}[1]{\markright{#1}}
(pour la gestion des intitulés de sous-sections).
Un exemple plus compliqué :
Dans un document Latex de classe article et de mode oneside, on souhaite avoir comme en-tête un
trait horizontal simple au dessus duquel figurera :
À gauche : L’intitulé de la section courante, écrit sous la forme :
Section n. Intitulé de la section
(en couleur rouge).
À droite : L’intitulé de la sous-section courante, écrit sous la forme :
Sous-section n.m. Intitulé de la sous-section
(en couleur verte).
Pour ce faire, il faudrait d’abord définir l’en-tête souhaitée au préambule du document par le code :
\pagestyle{fancy}
\fancyhead{}
\lhead{\leftmark}
\rhead{\rightmark}
(sans oublier bien sûr de charger préalablement le package fancyhdr).
Ensuite, juste après ceci et pas avant (toujours dans le préambule du document), redéfinir les deux
commandes \sectionmark et \subsectionmark par :

16 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

\renewcommand{\sectionmark}[1]{\markboth{{\color{red} Section \thesection. #1}}{}}


\renewcommand{\subsectionmark}[1]{\markright{{\color{green} Sous-section \thesubsection. #1}}}

Ainsi programmé, les intitulés des sections et des sous-sections qui apparaîtront dans l’en-tête du
document seront exactement ceux donnés par les commandes \sectionmark et \subsectionmark
lorsque celles-ci sont utilisées ; sinon ceux de la table des matières.
Une dernière remarque : Les commandes \leftmark et \rightmark fonctionnent correctement
lorsqu’on les utilise pour définir sa propre en-tête (c’est-à-dire accompagnées des commandes telles
que \lhead, \rhead, . . . etc) mais elles fonctionnent moins bien lorsqu’on les utilise seules dans le
corps d’un document Latex.

Exercices
Exercice 1 : Le texte encadré ci-dessous constitue une page d’une série de TD écrite en Latex
(classe article, mode oneside).

Université A. Mira de Béjaia Année 2011-2012

Exercice 4:
En aérodynamique et en mécanique des fluides, les fonctions φ et ψ dans
l’expression f = φ + iψ, où f est une fonction holomorphe sur C sur C,
s’appellent respectivement: potentiel des vitesses et fonction courant.
Supposons que φ(x, y) = x2 + 4x − y 2 + 2y.
— Déterminer l’expression de ψ(x, y) en fonction de x et de y, puis en déduire
l’expression de f (z) en fonction de z.
Exercice 5 (exercice additionnel):
Soit f une fonction holomorphe sur C dont l’expression algébrique est donnée
par:
f (z) = P (x, y) + i Q(x, y),
où z = x + i y (x, y ∈ R), P = Ref et Q = Imf .
On donne: P (x, y) = ex (x cos y − y sin y).
1. Déterminer l’expression de Q(x, y) en fonction de x et de y.
2. En déduire l’expression de f (z) en fonction de z.
Exercice 6:
La formule intégrale de Cauchy annonce ce qui suit:

Soit f une fonction holomorphe sur un ouvert D de C qui contient


un chemin fermé γ et soit a un point du plan complexe se trouvant
à l’intérieur de γ. Alors, on a:

f (z)
I
n!
f (n) (a) = dz,
2πi γ (z − a)n+1

où l’on a supposé que γ est orienté positivement.


1. En utilisant la formule intégrale de Cauchy montrer que l’on a pour
tout t ∈ R et tout n ∈ N:
 n 2 I n tz
t 1 t e
= dz ,
n! 2π i γ n!z n+1
où γ est un contour fermé entourant l’origine (supposé orienté positive-
ment).
2. En déduire que l’on a pour tout t ∈ R:
∞  n 2 Z 2π
X t 1
= e2t cos θ dθ.
n=0
n! 2π 0

2/3 B. Farhi

Comme on le constate, l’en-tête et le pied de page du document en question sont composés comme
suit :

17 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

En-tête : Un trait horizontal d’épaisseur 1 pt. À sa droite c’est marqué “Année 2011-2012” et à
sa gauche c’est marqué “Université A. Mira de Béjaia” (écriture en italique).
Pied de page : À droite c’est marqué le nom de l’auteur, en l’occurrence “B. Farhi” (écriture en
petites lettres majiscules). Au centre se trouve la numérotation de la page qui est présentée ici
sous la forme “Numéro de la page/Nombre total de pages”. Enfin, à gauche, on voit apparaître
le logo de l’université de Béjaia ; il s’agit d’une image de format eps, nommée logoubej,
insérée à cet endroit en réduisant sa taille à moitié (on supposera que cette image se trouve
dans le même répertoire que le document Latex dont il s’agit).
— Donner l’ensemble des instructions qui nous ont permis de réaliser l’en-tête et le pied de page de
ce document.
Solution : Le code source qui permet d’obtenir l’en-tête et le pied de page du document en
question est le suivant :

\documentclass[a4paper,12pt]{article} % Document de classe article (le mode


% est oneside par défaut)
\usepackage[T1]{fontenc} % Pour avoir des caractères en codage T1
\usepackage[utf8]{inputenc} % Pour gérer les accents
\usepackage[francais]{babel} % Pour avoir certains titres en franccais
\usepackage{graphicx} % Pour pouvoir insérer des figures
\usepackage{amsmath} % Pour avoir certains symbôles mathématiques
\usepackage{amssymb} % Pour les symbôles AMS
\usepackage{color} % Pour gérer les couleurs

\usepackage{fancyhdr} % Ce package contient le style de page fancy


\usepackage{lastpage} % Pour réferencer la dernière page du document
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{1pt}
\rhead{Année 2011-2012}
\lhead{\textit{Université A. Mira de Béjaia}}
\rfoot{\sc B. Farhi}
\cfoot{\thepage/\pageref{LastPage}}
\lfoot{\includegraphics[scale=0.5]{logoubej}}
\begin{document}
..
.
\end{document}

N.B : Dans le code source ci-dessus, les instructions que l’on a coloré en bleu sont celles agissant
sur le style du document (c’est-à-dire sur son en-tête et son pied de page). 
Exercice 2 : On souhaite attribuer à un ouvrage mathématique écrit en Latex (de classe book)
la mise en page décrite ci-dessous :
En-tête :
— Un trait horizontal de couleur magenta et d’épaisseur 0,1 pt.
— Au dessus-à gauche de ce trait horizontal, on fera apparaître le nom de l’auteur, en l’oc-
currence B. Farhi, écrit en vert et en petites lettres majuscules.
— Au dessus-à droite du trait horizontal, on fera apparaître pour les pages impaires l’intitulé
du chapitre courant précédé de son numéro et pour les pages paires l’intitulé de la section
courante précédée de son numéro. Ces intitulés seront écrits en couleur rouge, en petites
écriture (small) et en lettres minuscules.

18 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 1. STRUCTURE GÉNÉRALE D’UN DOCUMENT LATEX

Pied de page :
— À droite, on fera apparaître l’url http://www.bakir-farhi.net du site internet de l’au-
teur, non pas comme un simple texte mais comme un lien hypertexte.
— Au centre, le numéro de la page courante.
— À gauche, le logo de l’Université de Béjaia (une image de format eps nommée logoubej et
classée dans le même répertoire que le document Latex en question, qu’on réduira à moitié).
— Donner l’ensemble des instructions qui feront réaliser cette mise en page.
Solution : L’ensemble des instructions qui permettent de réaliser la mise en page souhaitée est
donné dans ce qui suit :

\documentclass[a4paper,12pt]{book} % Document de classe book (le mode


% est twoside par défaut)
\usepackage[T1]{fontenc} % Pour avoir des caractères en codage T1
\usepackage[utf8]{inputenc} % Pour gérer les accents
\usepackage[francais]{babel} % Pour avoir certains titres en franccais
\usepackage{graphicx} % Pour pouvoir insérer des figures
\usepackage{amsmath} % Pour avoir certains symbôles mathématiques
\usepackage{amssymb} % Pour les symbôles AMS
\usepackage{color} % Pour gérer les couleurs
\usepackage{hyperref} % Pour gérer les liens hypertexte, en particulier
% les url

\usepackage{fancyhdr} % Ce package contient le style de page fancy


\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrule}{\color{magenta} \hrule height 0.1pt}
\lhead{\textcolor{green}{\sc B. Farhi}}
\rhead[\rightmark]{\leftmark}
\rfoot{\url{http://www.bakir-farhi.net}}
\cfoot{\thepage}
\lfoot{\includegraphics[scale=0.5]{logoubej}}
\renewcommand{\chaptermark}[1]{\markboth{{\color{red} {\small \thechapter. #1}}}{}}
\renewcommand{\sectionmark}[1]{\markright{{\color{red} {\small \thesection. #1}}}}
\begin{document}
..
.
\end{document}

N.B : Dans le code source ci-dessus, les instructions que l’on a coloré en bleu sont celles agissant
sur le style du document (c’est-à-dire sur son en-tête et son pied de page). 

19 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 2
LES NOTES EN BAS DE PAGE

En Latex, les notes en bas de la page se réalisent par la commande :

\footnote{Le texte de la note}

que l’on met devant le mot auquel une note voulue est affectée. Par cette commande, les notes sont
numérotées par défaut en chiffres arabes (1, 2, 3, . . . etc). Plusieurs d’autres types de numérotations
sont possibles. On donnera l’essentiel de ces types dans ce qui suit :

2.1 Les types de numérotations


2.1.1 Numérotation en chiffres romains
Pour obtenir des numérotations de footnotes en chiffres romains majiscules, il suffit d’ajouter à
l’entête de votre document latex ceci :

\def\thefootnote{\Roman{footnote}}

Pour obtenir des numérotations de footnotes en chiffres romains miniscules, on fait la même chose
en remplaccant juste Roman par roman.
Pour revenir ensuite, à partir d’un endroit voulu du document, à la numérotation standard de
footnotes (c’est-à-dire à la numérotation en chiffres arabes), on met au début de cet endroit ceci :

\def\thefootnote{\arabic{footnote}}

2.1.2 Numérotation en lettres latines


Pour obtenir des numérotations de footnotes en lettres latines majiscules, il suffit d’ajouter à
l’entête de votre document latex ceci :

\def\thefootnote{\Alph{footnote}}

Pour obtenir des numérotations de footnotes en lettres latines miniscules, on fait la même chose en
remplaccant juste Alph par alph.

2.1.3 Numérotations à l’aide de symboles (autres les chiffres et les


lettres)
En Latex, on peut numéroter les footnotes à l’aide des neufs symboles suivants :

20
Bakir FARHI CHAPITRE 2. LES NOTES EN BAS DE PAGE

∗ † ‡ § ¶ ∥ ∗∗ †† ‡‡
(dans cet ordre).

Pour ce faire, il suffira de mettre au début de votre document ceci :

\def\thefootnote{\fnsymbol{footnote}}

2.2 Comment forcer une footnote à prendre un numéro


voulu
Pour forcer une note à prendre un numéro voulu (pour n’importe quel type de numérotation),
on utilise le code :

\footnote[Le numéro voulu]{Le texte de la note}

Exemple : Le texte suivant inséré dans votre document latex :


\def\thefootnote{\fnsymbol{footnote}} \\
Le théorème d’Al-Kashi\footnote[7]{Mathématicien musulman.}
affirme que dans un triangle quelconque $ABC$, on a:
$BC^2 = AB^2 + AC^2 - 2 AB \cdot AC \cos\widehat{BAC}$.
donne :
Le théorème d’Al-Kashi∗∗ affirme que dans un triangle quelconque ABC, on a : BC 2 =
[
AB 2 + AC 2 − 2AB · AC cos BAC.
Et en bas de la page, on aura la footnote :
**
Mathématicien musulman.

2.3 Comment faire une footnote à l’intérieur de certains


environnements
Dans certains environnements tels theorem, minipage, tabular, . . . etc, la commande \footnote
ne fonctionne pas correctement. En fait, le code \footnote{Le texte de la note} marque le
mot qui le précède par un numéro mais ne fait pas figurer la note qui lui est associée en bas
de la page. Pour y remédier à ce problème, on doit plutôt mettre \footnotemark juste après
le mot auquel on veut associer une note, puis après, on précisera la note voulue par le code
\footnotetext{Le texte de la note}.
En fait, le code \footnotemark sert juste à marquer le mot qui le précède par un petit numéro,
alors que le code \footnotetext{Le texte de la note} fait figurer la note voulue en bas de la
page.
Attention : Le code \footnotetext{Le texte de la note} doit être placé après le code
\footnotemark auquel il est associée et avant un autre code \footnotemark pour éviter la confu-
sion.
D’autres manières d’utilisation des footnotes (notamment à l’intérieur d’un environnement) sont
données dans ce qui suit :
• Pour associer un numéro voulu n à une footnote à l’aide des commandes \footnotemark et
\footnotetext, on mettra :

\footnotemark[n]

(juste après le mot auquel on veut associer une note), puis après :

21 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 2. LES NOTES EN BAS DE PAGE

\footnotetext[n]{Le texte de la note}

• Pour associer une seule note à plusieurs endroits (mots) du texte, on mettra devant chaque endroit
voulu :

\footnotemark[n]

où n est un numéro voulu. Ensuite, après le dernier endroit, on mettra le code :

\footnotetext[n]{Le texte de la note}

Exemple 1 : Le texte suivant dans un document latex :


Parmi les grands mathématiciens du monde on cite:
Al-Khawarizmi\footnotemark[3], Abu Kamil\footnotemark[3],
Al-Kashi\footnotemark[3], Gauss\footnotemark[4], \dots \, etc.
\footnotetext[3]{Mathématicien musulman.}
\footnotetext[4]{Mathématicien allemand.}
donne :
Parmi les grands mathématiciens du monde on cite : Al-Khawarizmi3 , Abu Kamil3 , Al-
Kashi3 , Gauss4 , . . . etc.
puis après en bas de la page :

3
Mathématicien musulman.
4
Mathématicien allemand.
Exemple 2 : Supposons que l’on a déjà mis 5 footnotes dans notre document alors le même texte
de l’exemple précédent peut s’écrire comme suit :
Parmi les grands mathématiciens du monde on cite:
Al-Khawarizmi\footnote{Mathématicien musulmans.},
Abu Kamil\footnotemark[6], Al-Kashi\footnotemark[6],
Gauss\footnote{Mathématicien allemand.}, \dots \, etc.
Ce qui donnera :
Parmi les grands mathématiciens du monde on cite : Al-Khawarizmi6 , Abu Kamil6 , Al-
Kashi6 , Gauss7 , . . . etc.
puis après en bas de la page :

6
Mathématicien musulman.
7
Mathématicien allemand.
Attention : L’astuce de ce second exemple marche bien à condition de ne pas ajouter après des
footnotes avant celles du texte en l’occurrence.

22 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 3
LATEX MATHÉMATIQUE

3.1 Les équations


3.1.1 Equations courtes et moyennes
Pour écrire une équation numérotée (qui tiendra sur une ligne), on utilise l’environnement equa-
tion. En voici un exemple :
\begin{equation}\label{al-karaji}
\sum_{k = 1}^n k^3 = \left(\sum_{k = 1}^n k\right)^2
= \frac{n^2(n+1)^2}{4}
\end{equation}
Ce qui donne : ( n )2

n ∑ n2 (n + 1)2
k3 = k = (1)
k=1 k=1
4
(en supposant que c’est la première équation de votre document).
Le code \label{al-karaji} sert à référencer l’équation en question ; ici notre équation est réfé-
rencée par le nom du mathématicien qui l’a découverte. Pour se référer ensuite à cette équation
dans notre document, on utilise le code \eqref{al-karaji} ou bien le code (\ref{al-karaji})
pour donner (1).
Pour écrire une équation non numérotée, on utilise l’environnement equation* plutôt que equation.

3.1.2 Equations longues


Pour écrire une équation longue (c’est-à-dire qui ne tient pas sur une seule ligne) et numérotée,
on utilise la plupart du temps l’environnement multline. Par exemple, le code :
\begin{multline}
(x-1)(x^{2n}+x^{2n-1}+\dots+1)+(x+1)(x^{2n}-x^{2n-1}+x^{2n-2})-\dots+1)= \\
(x^{2n+1}-1)+(x^{2n+1}+1)=2x^{2n+1}
\end{multline}
donne :

(x − 1)(x2n + x2n−1 + · · · + 1) + (x + 1)(x2n − x2n−1 + x2n−2 − · · · + 1) =


(x2n+1 − 1) + (x2n+1 + 1) = 2x2n+1 (2)

(en supposant que c’est la deuxième équation de votre document).


On pourra bien sur référencer l’équation longue en question en utilisant le code \label{la référence}.

23
Bakir FARHI CHAPITRE 3. LATEX MATHÉMATIQUE

Pour écrire une équation longue non numérotée, on utilise l’environnement multline* plutôt que mult-
line.
Pour écrire une équation longue numérotée avec des alignements bien précis, on utilise l’environne-
ment split à l’intérieur de l’environnement equation. Par exemple, le code :
\begin{equation}
\begin{split}
(x-1)(x^{2n}+x^{2n-1}+\dots+1)+(x+1)(x^{2n}-x^{2n-1}+ x^{2n-2})-\dots+1) &= \\
(x^{2n+1}-1)+(x^{2n+1}+1) &= \\
2x^{2n+1}
\end{split}
\end{equation}
donne :
(x − 1)(x2n + x2n−1 + · · · + 1) + (x + 1)(x2n − x2n−1 + x2n−2 − · · · + 1) =
(x2n+1 − 1) + (x2n+1 + 1) = (3)
2n+1
2x

(en supposant que c’est la troisième équation de votre document).


Noter que le symbole & marque les endroits d’alignement.
Pour une équation du même style mais non numérotée, on utilise l’environnement equation* plutôt
que equation.
Pour référencer l’équation en question, on utilise le code \label{la référence} et pour citer
ensuite cette référence dans le document, on utilise le code \eqref{la référence}.

3.1.3 Série d’équations


Pour écrire une série d’équations numérotées et alignées, on utilise l’environnement eqnarray.
Par exemple, le code :
\begin{eqnarray}
(a+b)+(a-b) & = & 2a \\
(a+b)^2+(a-b)^2 & = & 2(a^2+b^2) \\
(a+b)^3+(a-b)^3 & = & 2a(a^2+3b^2)
\end{eqnarray}
donne :

(a + b) + (a − b) = 2a (3.1)
(a + b)2 + (a − b)2 = 2(a2 + b2 ) (3.2)
(a + b)3 + (a − b)3 = 2a(a2 + 3b2 ) (3.3)

(en supposant que ces équations sont les trois premières équations de votre document).
Rappelons que le symbole & précise les endroits d’alignement.
Pour écrire une série d’équations alignées et non numérotées, on utilise l’environnement eqnarray*
plutôt que eqnarray.
Pour écrire une série d’équations alignées dont certaines sont numérotées et d’autres non, on
utilise l’environnement eqnarray et on précisera qu’une équation est non numérotée en ajoutant le
code \notag à sa fin. Par exemple, le code :
\begin{eqnarray}
(a+b)+(a-b) & = & 2a \\
(a+b)^2+(a-b)^2 & = & 2(a^2+b^2) \notag \\
(a+b)^3+(a-b)^3 & = & 2a(a^2+3b^2)
\end{eqnarray}

24 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 3. LATEX MATHÉMATIQUE

donne :

(a + b) + (a − b) = 2a (3.4)
(a + b)2 + (a − b)2 = 2(a2 + b2 )
(a + b)3 + (a − b)3 = 2a(a2 + 3b2 ) (3.5)

3.1.4 Equations numérotées par une numérotation de notre choix


Pour écrire une équation et la numéroter par une numérotation de notre choix, on utilise par
exemple l’environnement equation en précisant à la fin de l’équation sa numérotation par le code :
\tag{numéro ou symbole choisi}. Par exemple le code :
\begin{equation}
E = mc^2 \tag{$I$}
\end{equation}
donne :
E = mc2 (I)
Noter que les parenthèses de la numérotation se mettent par défaut.
Attention : Contrairement à \notag, le code \tag ne fonctionne par dans l’environnement eqnar-
ray. Il fonctionne cependant dans l’environnement align qu’on verra plus loin.

25 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 4
LES COULEURS

Pour pouvoir utiliser des couleurs en Latex, on doit charger le package :


\usepackage{color}
à l’entête de notre document. Ensuite pour utiliser une couleur donnée, la commande est :
\color{Nom de la couleur}
Il est à savoir que le package color a 8 couleurs predefines qui sont données dans le tableau suivant :

Nom de la couleur Nom en franccais la couleur en question


black Noir
white Blanc
red Rouge
green Vert
blue Bleu
cyan Bleu clair
magenta Magenta
yellow Jaune

Ainsi, pour écrire par exemple le texte “Omar va à l’école” en magenta, la commande serait :
\color{magenta} Omar va à l’école
Cependant, on pourrait avoir envie d’utiliser d’autres couleurs. Ceci est bien sûr possible en Latex
et on a trois types de couleurs que voici :
1er type : il est défini par la syntaxe gray. Il contient toutes les couleurs grises possible, du blanc
au noir. La syntaxe gray est suivi du taux de blanc dans la couleur voulue. Le taux 1 correspond à la
couleur blanche et le taux 0 correspond à la couleur noir. Par exemple, pour définir la couleur grise
de taux de blancheur 0.7, on insert à l’en-tête de notre document Latex la commande :
\definecolor{gris}{gray}{0.7}
(noter que le mot “gris” de la première accolade est de notre choix). Ensuite pour utiliser cette
couleur qu’on a nommé “gris”, on utilise la syntaxe :
\color{gris} Texte voulu
On obtient alors :
Texte voulu

26
Bakir FARHI CHAPITRE 4. LES COULEURS

Pour une utilisation unique, on pourra bien sûr utiliser notre couleur grise sans la définir préalablement
et la syntaxe dans ce cas là est :

\color[gray]{0.7} Text voulu ...

2ème type : il est défini par la syntaxe rgb. Il contient toutes les couleurs. Ces couleurs peuvent être
définies à partir de trois taux :
— Le taux de rouge (red) contenu dans la couleur
— Le taux de vert (green) contenu dans la couleur
— Le taux de bleu (blue) contenu dans la couleur.
D’où le nom rgb, comme red-green-blue. Voici un exemple de définition puis d’utilisation d’une
couleur de type rgb :

\definecolor{vertolive}{rgb}{0.5,0.5,0}

(bien sûr le nom “vertolive” est de notre choix). Cette définition est à insérer bien sûr à l’en-tête du
document Latex. Ensuite, pour utiliser cette couleur définie, on utilise la syntaxe :

\color{vertolive} Texte voulu ...

On obtient alors :

Texte voulu

Noter bien que ces trois taux sont tous des nombres décimaux compris entre 0 et 1 mais leurs somme
n’est pas obligatoirement égale à 1.
Comme pour le premier type, si notre utilisation pour cette couleur est unique ou rare, on pourra
l’utiliser sans la définir préalablement. Pour ce faire, on utilise la syntaxe :

\color[rgb]{0.5,0.5,0} Text voulu ...

3ème type : il est défini par la syntaxe RGB. Ce codage (nommé RVB en franccais) contient toutes
les couleurs visibles par l’homme. Toute couleur est définie par trois entiers naturels, tous inférieurs
strictement à 256 = 28 . Ces nombres correspondent aux composantes du rouge, du vert et du bleu
dans une couleur donnée ; d’o‘u le nom RGB (comme Red-Green-Blue). En fait, chaque composante
est codée sur 8 bits, ce qui donne 28 = 256 niveaux d’intensité pour chacune d’elles. Noter que
ce codage est le plus utilisé par les logiciels d’imagerie et c’est celui que nous préférons aussi pour
Latex. En voici quelques exemples faciles de couleurs représentées par ce codage :
— Le rouge est évidemment un RGB(255, 0, 0).
— Le vert est évidemment un RGB(0, 255, 0).
— Le bleu est évidemment un RGB(0, 0, 255).
— Le jaune est un RGB(255, 255, 0) (c’est don un mélange du rouge et du vert avec une même
intensité, ce qui est bien connu).

— Le noir est un RGB(0, 0, 0).


— Le blanc est un RGB(255, 255, 255).
— Le cyan (ou le bleu clair) est un RGB(0, 255, 255).
— Le magenta est un RGB(255, 0, 255).
Pour chercher le codage RGB d’une couleur voulue, on peut consulter le site internet http://fr.
wikipedia.org/wiki/Liste_de_couleurs.
Pour définir une couleur via son codage RGB, on utilise la commande :

\definecolor{Nom de votre choix}{RGB}{a,b,c}

27 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 4. LES COULEURS

où a, b et c sont des entiers naturels inférieurs strictement à 256 et désignant respectivement les
intensités du rouge, du vert et du bleu dans la couleur en question. Ensuite, pour utiliser cette
couleur afin de colorer par exemple un certain texte, on utilise comme avant la syntaxe :

\color{Le nom que vous avez choisi pour votre couleur} Texte voulu

Pour utiliser de faccon temporaire une couleur définie par son code RGB, on peut le faire sans définir
préalablement cette couleur. La commande à utiliser est :

\color[RGB]{a,b,c} Texte à colorer

où a, b et c désignent respectivement les intensités du rouge, du vert et du bleu dans la couleur en


question.
4ème type : il est défini par la syntaxe cmyk. Ce type contient toutes les couleurs. Il est codé par 4
taux qui sont : le taux de la couleur cyan, le taux de la couleur magenta, le taux de la couleur jaune
(yellow) et le taux de la couleur noire. La définition d’une couleur via le codage cmyk se fait par la
commande :

\definecolor{Nom de votre choix}{cmyk}{a,b,c,d}

où a, b, c, et d sont les nombres décimaux compris entre 0 et 1 (mais de somme non forcément égale
à 1) représentant respectivement les taux du cyan, magenta, jaune et noire dans la douleur définie.
Pour utiliser une couleur sans la définir préalablement, on utilise la commande :

\color[cmyk]{a,b,c,d} Texte à colorer

où a, b, c et d sont les taux respectifs du cyan, magenta, jaune et noire dans la couleur utilisée.
Une remarque supplémentaire : On peut obtenir facilement le code rgb du code RGB et vice
versa. Pour ce faire, on a la règle :
A B C
RGB(A, B, C) = rgb(a, b, c), avec a = 256
, b= 256
, c= 256
.

Comment utiliser rapidement avec WinEdt une couleur :


Sous WinEdt, il existe une faccon simple d’utiliser ou de définir une couleur sans perdre son
temps à cherche son code. En cliquant sur l’icône se trouvant juste au dessous de I (de l’Italique),
une palette de couleurs s’ouvre et il suffit de cliquer sur une couleur de notre choix pour que sa
commande s’affiche sur le texte avec son code rgb. A droite de la palette, il y a également des cases
à remplir par les intensités en code RGB d’une couleur à définir et voir immédiatement cette couleur.

28 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 5
LES BOITES

5.1 Comment fabriquer des boites sans package particu-


lier
5.1.1 Boites contenant un texte d’une ligne
En LATEX, pour fabriquer des boites contenant du texte, on utilise les commandes \fbox et
\framebox. Ces deux commandes ne nécessitent aucun package particulier. Les textes qu’on mettra
à l’intérieur de ces boites doivent tenir en une seule ligne 1 .
La commande \framebox comporte deux arguments optionnels. Le premier sert à fixer la largeur
de la boite et le second sert à choisir l’alignement voulu au texte de la boite (alignement à gauche
(l), alignement à droite (r), centralisation (c), répartition uniforme (s)).
Exemples :
1. Le code : \fbox{Une belle boite} donne :
Une belle boite
2. Le code : \framebox[6cm][c]{Une belle boite} donne :
Une belle boite
• L’épaisseur de la bordure est spécifié par le code : \setlength{\fboxrule}{épaisseur voulue}.
Exemple : Le code :

\setlength{\fboxrule}{2pt}
\framebox[8cm][c]{Rien de spécial!}

donne :
Rien de spécial !

• Les différents types d’alignement sont :


l (alignement à gauche)
r (alignement à droite)
c (centralisation)
s (On répartit les mots du texte uniformément à la longueur de la boite).
1. Voir plus loin pour ce qui concerne les textes comportant plusieurs lignes.

29
Bakir FARHI CHAPITRE 5. LES BOITES

Exemple : Le code : \framebox[6cm][s]{Une belle boite} donne :


Une belle boite
Remarque : La commande \boxed est réservée à mettre dans une boite un texte mathématique
(elle doit être donc mise entre deux dollars).
Un exemple important et utile :
Pour fabriquer une boite de largeur égale à 3 fois la largeur du texte qu’elle contiendra, lequel sera
centré, on utilise le code \framebox[3\width]{le texte voulu}.
Par exemple, le code : \framebox[3\width]{Une belle boite} donne :
Une belle boite
• Pour modifier l’espace entre le contenu de la boite et sa bordure, on utilise la commande \fboxsep.
Par exemple, le code :
\setlength{\fboxsep}{1cm}
\fbox{Une belle boite}
donne :

Une belle boite

5.1.2 Boites contenant un paragraphe


Pour insérer tout un paragraphe dans une boite (avec la commande \fbox), on doit utiliser en
plus la commande \parbox dont le premier paramètre est la largeur de la boite et le second est
son contenu. Pour contrôler l’alignement du texte de la boite, on utilise les commandes d’aligne-
ment : \flushleft (alignement à gauche), \flushright (alignement à droite) et \centering
(centralisation).
Exemple : Le code :
\fbox{\parbox{8cm}{\flushleft
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre
type d’intégrale, tout à la fois plus souple, plus général et mieux
adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
}
}
donne :

Vers la fin du 19 ème sciecle, beaucoup de


mathématiciens comprirent que l’intégrale de
Riemann devait être remplacée par quelque
autre type d’intégrale, tout à la fois plus
souple, plus général et mieux adapté au
passage à la limite. Les tentatives les plus
notables sont dues à C. Jordan, E. Borel, W.
H. young et H. Lebesgue. Ce dernier obtint la
construction qui s’avéra la plus réussie.

30 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

5.2 Boites avec le package fancybox


5.2.1 Boites contenant un texte d’une ligne
Le package fancybox (qu’on ajoutera à l’entête du fichier tex à travers la commande
\usepackage{fancybox}) permet d’obtenir des boites à plusieurs types de bordures. Les com-
mandes à utiliser sont :
• \doublebox (pour les boites à doubles bordures)
• \ovalbox (pour les boites à bordures ovales)
• \Ovalbox (pour les boites à bordures ovales et épaisses)
• \shadowbox (pour les boites à ombre).
Exemples : Les codes :
\doublebox{double bordure}, \ovalbox{boite ovale},
\Ovalbox{boite ovale à bordure épaisse} et \shadowbox{boite à ombre} donnent res-
pectivement :
   boite à ombre
double bordure , boite ovale , boite ovale à bordure épaisse et .
 

Quelques options supplémentaires pour les commandes \ovalbox, \Ovalbox et \shadowbox :


• Pour les commandes \ovalbox et \Ovalbox, les rondeurs des coins arrondis peuvent être modifiées
par la commande \cornersize{rondeur voulue}.
• Pour la commande \shadowbox, la taille de l’ombre peut être modifiée par la commande
\setlength{\shadowsize}{taille voulue}.
Exemples : Le code :

\cornersize{1}
\ovalbox{coins arrondis}

donne :

coins arrondis
Et le code :

\setlength{\shadowsize}{8pt}
\shadowbox{ombre}

donne :
ombre
.

5.2.2 Boites contenant un paragraphe


Les commandes \doublebox, \ovalbox, \Ovalbox et \shadowbox telles qu’on les a utilisé
précédemment ne peuvent fabriquer que des boites comportant une seule ligne. Pour qu’elles puissent
fabriquer des boites comportant tout un paragraphe, il faudrait les combiner avec la commande
\parbox ou avec l’environnement minipage.
Exemples :
1. Le code :
\doublebox{\parbox{6cm}{\flushleft
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre

31 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

type d’intégrale, tout à la fois plus souple, plus général et mieux


adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
}
}
donne :

Vers la fin du 19 ème sciecle,


beaucoup de mathématiciens
comprirent que l’intégrale de
Riemann devait être remplacée par
quelque autre type d’intégrale,
tout à la fois plus souple, plus
général et mieux adapté au
passage à la limite. Les tentatives
les plus notables sont dues à C.
Jordan, E. Borel, W. H. young et
H. Lebesgue. Ce dernier obtint la
construction qui s’avéra la plus
réussie.

2. Le code :
\Ovalbox{
\begin{minipage}{0.75\textwidth}
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre
type d’intégrale, tout à la fois plus souple, plus général et mieux
adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
\end{minipage}
}
donne :
' $
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait être remplacée par quelque autre type
d’intégrale, tout à la fois plus souple, plus général et mieux adapté au
passage à la limite. Les tentatives les plus notables sont dues à C. Jordan,
E. Borel, W. H. young et H. Lebesgue. Ce dernier obtint la construction
qui s’avéra la plus réussie.
& %

5.3 Boites de couleurs


Le package graphicx propose les commandes \colorbox et \fcolorbox qui permettent d’avoir
des boites de couleurs (fond et bordure). Ces deux commandes fonctionnent comme ceci :
1) Pour \colorbox :
Elle permet d’avoir une boite sans bordure avec une couleur de fond voulue.
Exemple : Le code : \colorbox{yellow}{Boite jaune} donne :
Boite jaune .

32 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

Là aussi, pour avoir une boite de couleur (sans bordure) comportant tout un paragraphe, il faudrait
combiner cette commande avec la commande \parbox ou avec l’environnement minipage, comme
c’est déjà expliqué auparavant.
2) Pour \fcolorbox :
Elle permet de créer une boite dont la bordure et le fond prennent des couleurs voulues.
Exemple : Le code : \fcolorbox{red}{yellow}{Démonstration} donne :
Démonstration .
Encore une fois, pour inclure tout un paragraphe dans une boite avec la commande \fcolorbox, il
faudrait combiner cette commande soit avec la commande \parbox ou bien avec l’environnement
minipage, comme c’est déjà expliqué auparavant.
D’autres exemples où les couleurs choisies sont définies à l’aide des codes gray, rgb ou
RGB :
Le code :

\fcolorbox[gray]{0}{0.9}{\parbox{7cm}{\flushleft
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre
type d’intégrale, tout à la fois plus souple, plus général et mieux
adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
}
}

donne :

Vers la fin du 19 ème sciecle, beaucoup


de mathématiciens comprirent que
l’intégrale de Riemann devait être
remplacée par quelque autre type
d’intégrale, tout à la fois plus souple,
plus général et mieux adapté au passage
à la limite. Les tentatives les plus
notables sont dues à C. Jordan, E.
Borel, W. H. young et H. Lebesgue. Ce
dernier obtint la construction qui s’avéra
la plus réussie.
Et le code :

\setlength{\fboxrule}{2pt}
\fcolorbox[RGB]{112,0,223}{255,128,0}{
\begin{minipage}{0.75\textwidth}
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre
type d’intégrale, tout à la fois plus souple, plus général et mieux
adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
\end{minipage}
}

33 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

donne :
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait être remplacée par quelque autre type
d’intégrale, tout à la fois plus souple, plus général et mieux adapté au
passage à la limite. Les tentatives les plus notables sont dues à C. Jordan,
E. Borel, W. H. young et H. Lebesgue. Ce dernier obtint la construction
qui s’avéra la plus réussie.

5.4 Boites à titre


On va maintenant découvrir comment fabriquer une boite avec bordure et un titre qui se situe par
dessus de cette bordure. Pour ce faire, on utilise la commande \boxput qui permet de superposer
deux boites.
La commande \boxput prend deux boites en paramètres et place la première boite derrière la
seconde. La commande \boxput* joue le même rôle mais elle place la seconde boite derrière la
première.
Enfin, on doit spécifier deux coordonnées qui indiquent où la première boite est placée par rapport
à la seconde. Par exemple :
— Les coordonnées (0,0) indiquent que la première boite est centrée (horizontalement et verticale-
ment) par rapport à la seconde.
— Les coordonnées (0,1) indiquent que la première boite est centrée (horizontalement) et se trouve
en haut par rapport à la seconde.
— Les coordonnées (1,0) indiquent que la première boite se trouve à droite et elle est centrée (ver-
ticalement) par rapport à la seconde.
— Les coordonnées (-1,-1) indiquent que la première boite se trouve à gauche et en bas de la
seconde.
En tout, on a 9 cas possibles pour les coordonnées à spécifier, puisque ces coordonnées appartiennent
à l’ensemble :
{(x, y) : x ∈ {−1, 0, 1} et y ∈ {−1, 0, 1}}.
La syntaxe des commandes \boxput (resp. \boxput*) est :
\boxput(x,y){1ère boite}{2nde boite} (resp. \boxput*(x,y){1ère boite}{2nde boite}).
Exemple :
On veut fabriquer une boite sans bordure, de fond gris, contenant un texte qui se trouve séparé de la
frontière de 10 points et on veut que cette boite porte un titre qui se trouvera en haut et au centre
(en plus, écrit en gras). Pour ce faire, on utilisera la commande \boxput* dans laquelle la première
boite sera juste le titre (qui va être considéré comme une boite sans bordure, de fond blanc) et la
seconde boite sera la boite à texte, de fond gris, en question. Le code complet est le suivant :
\boxput*(0,1){
\colorbox{white}{\bf Les intégrales de Lebesgue}
}{
\setlength{\fboxsep}{10pt}
\colorbox[gray]{0.7}{\begin{minipage}{0.8\textwidth}
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent
que l’intégrale de Riemann devait \^etre remplacée par quelque autre
type d’intégrale, tout à la fois plus souple, plus général et mieux
adapté au passage à la limite. Les tentatives les plus notables sont
dues à C. Jordan, E. Borel, W. H. young et H. Lebesgue. Ce dernier
obtint la construction qui s’avéra la plus réussie.
\end{minipage}}
}

34 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

Ce qui donne :
Les intégrales de Lebesgue
Vers la fin du 19 ème sciecle, beaucoup de mathématiciens comprirent que
l’intégrale de Riemann devait être remplacée par quelque autre type d’intégrale,
tout à la fois plus souple, plus général et mieux adapté au passage à la limite.
Les tentatives les plus notables sont dues à C. Jordan, E. Borel, W. H. young et
H. Lebesgue. Ce dernier obtint la construction qui s’avéra la plus réussie.

5.5 Utilisation des boites pour empêcher certaines cé-


sures LATEX
LATEX fait souvent des césures indésirables pour ne pas dépasser la ligne. Pour empêcher LATEX de
commettre ces césures, quitte à dépasser la ligne s’il le faut, les spécialistes utilisent des boites sans
bordure et sans couleur. L’idée consiste à mettre le môt (ou le texte) à ne pas couper dans une boite
(sans bordure et sans couleur). LATEX ne saura jammais découper une boite ; ce qui fait que le mot
(ou le texte) de la boite restera toujours sur une même ligne.
Les codes permettant de créer des boites sans bordure et sans couleur sont de deux types : \mbox
et \makebox.
• Pour \mbox, la syntaxe est simple :

\mbox{le mot ou le texte à ne pas découper}

• Pour \makebox, c’est la même syntaxe mais elle met à notre disposition deux options facultatives :
la première pour spécifier la longueur
( de la boite et la seconde pour préciser l’alignement horizontal
du texte à l’intérieur de la boite alignement à gauche
) (l), alignement à droite (r), centralisation
(c) ou répartition uniforme des mots du texte (s) . Ainsi, le code :

\mbox{salut tout le monde}\\


\makebox[8cm][l]{salut tout le monde}\\
\makebox[8cm][r]{salut tout le monde}\\
\makebox[8cm][c]{salut tout le monde}\\
\makebox[8cm][s]{salut tout le monde}

donne :
salut tout le monde
salut tout le monde
salut tout le monde
salut tout le monde
salut tout le monde
Exemple d’utilisation d’une boite pour éviter une césure :
La phrase :

Pour Gauss et pour beaucoup de mathématiciens du monde, la théorie des nombres


est incontestablement la reine des mathématiques.

(ainsi tapée) donne après compilation :


Pour Gauss et pour beaucoup de mathématiciens du monde, la théorie des nombres est incontesta-
blement la reine des mathématiques.
où l’on constate que le mot “incontestablement” est découpé en incontesta-blement. Pour éviter
cette coupure, on devra taper la phrase précédente comme ceci :

35 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

Pour Gauss et pour beaucoup de mathématiciens du monde, la théorie des nombres


est \mbox{incontestablement} la reine des mathématiques.

Ce qui donne (après compilation) :


Pour Gauss et pour beaucoup de mathématiciens du monde, la théorie des nombres est incontestablement
la reine des mathématiques.
(Constater que le mot “incontestablement” n’est plus découpé en deux).

5.6 Le package framed


Le package framed, qu’on chargera via la commande \usepackage{framed}, laquelle on mettra
à l’entête du document LATEX, propose de nouveaux environnements permettant de créer des boites
dont le contenu pourrait être un paragraphe (c’est-à-dire un texte comportant plusieurs lignes) et
ceci sans passer par la commande \parbox ni par l’environnement minipage ; ce qui est donc très
pratique.
Les boites créées par ces environnements peuvent aussi tenir plusieurs pages de texte !

5.6.1 Les différents environnements du package framed


Les plus importants environnements du package framed sont :
1. L’environnement framed :
Cet environnement crée une boite simple qui peut contenir n’importe quel paragraphe, aussi grand
qu’il soit (même s’il prend plusieurs pages !). La boite qu’il crée est du même type que celle créée
par la commande \fbox (vue précédemment).
Exemple 1 : Le code 2 :

\begin{framed}
Je r\^eve d’un jour o\‘u l’égo\"{\i}sme ne régnera plus dans
les sciences, o\‘u on s’associera pour étudier, au lieu
d’envoyer aux académiciens des plis cachetés, on
s’empressera de publier ses moindres observations
pour peu qu’elles soient nouvelles, et on ajoutera \og je
ne sais pas le reste \fg.
\end{framed}

donne :

Je rêve d’un jour où l’égoïsme ne régnera plus dans les sciences, où on s’associera pour
étudier, au lieu d’envoyer aux académiciens des plis cachetés, on s’empressera de publier ses
moindres observations pour peu qu’elles soient nouvelles, et on ajoutera « je ne sais pas le
reste ».

Pour modifier l’épaisseur de la bordure créée par cet environnement, on utilise la commande :
\FrameRule=épaisseur voulu, qu’on mettra juste avant l’environnement framed. Et pour mo-
difier l’espace séparant le texte de la boite de la bordure de la boite, on utilise la commande :
\FrameSep=espace voulu, qu’on mettra aussi juste avant l’environnement framed.
Exemple 2 : Le code :
2. Ce texte est écrit par Evariste GALOIS (mathématicien franccais du 19ème sciecle).

36 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

\FrameRule=2pt
\FrameSep=1cm
\begin{framed}
Je r\^eve d’un jour o\‘u l’égo\"{\i}sme ne régnera plus dans
les sciences, o\‘u on s’associera pour étudier, au lieu
d’envoyer aux académiciens des plis cachetés, on
s’empressera de publier ses moindres observations
pour peu qu’elles soient nouvelles, et on ajoutera \og je
ne sais pas le reste \fg.
\end{framed}

donne :

Je rêve d’un jour où l’égoïsme ne régnera plus dans les sciences, où on s’associera
pour étudier, au lieu d’envoyer aux académiciens des plis cachetés, on s’empressera de
publier ses moindres observations pour peu qu’elles soient nouvelles, et on ajoutera « je
ne sais pas le reste ».

2. L’environnement oframed :
Sa seule différence avec l’environnement framed est le fait qu’il laisse ouvertes d’en bas (resp. d’en
haut) les boites qu’il construit en chaque page jusqu’à l’avant dernière (resp. sauf la première).
Autrement dit, les boites de chaque page contenant le texte de l’environnement oframed sont
ouvertes d’en haut et d’en bas, sauf la première qui est ouverte juste d’en bas et la dernière qui est
ouverte juste d’en haut.
On comprend bien donc que cet environnement est fait pour construire des boites contenant un
texte très long qui se tient en plusieurs pages.
3. L’environnement shaded :
Cet environnement est l’analogue de la commande \colorbox. Il crée une boite de couleur sans
bordure qui peut contenir n’importe quel paragraphe, aussi grand qu’il soit (même s’il prend plusieurs
pages).
Avant d’utiliser l’environnement shaded, on doit obligatoirement lui préciser la couleur voulue du
fond de la boite (voir les deux exemples ci-dessous).
Exemple 1 : Le code :

\definecolor{shadecolor}{gray}{0.9}
\begin{shaded}
Je r\^eve d’un jour o\‘u l’égo\"{\i}sme ne régnera plus dans
les sciences, o\‘u on s’associera pour étudier, au lieu
d’envoyer aux académiciens des plis cachetés, on
s’empressera de publier ses moindres observations
pour peu qu’elles soient nouvelles, et on ajoutera \og je
ne sais pas le reste \fg.
\end{shaded}

donne :

37 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

Je rêve d’un jour où l’égoïsme ne régnera plus dans les sciences, où on s’associera pour étu-
dier, au lieu d’envoyer aux académiciens des plis cachetés, on s’empressera de publier ses moindres
observations pour peu qu’elles soient nouvelles, et on ajoutera « je ne sais pas le reste ».

Exemple 2 : Le code :

\definecolor{shadecolor}{rgb}{1,1,0}
\begin{shaded}
Je r\^eve d’un jour o\‘u l’égo\"{\i}sme ne régnera plus dans
les sciences, o\‘u on s’associera pour étudier, au lieu
d’envoyer aux académiciens des plis cachetés, on
s’empressera de publier ses moindres observations
pour peu qu’elles soient nouvelles, et on ajoutera \og je
ne sais pas le reste \fg.
\end{shaded}

donne :

Je rêve d’un jour où l’égoïsme ne régnera plus dans les sciences, où on s’associera pour étu-
dier, au lieu d’envoyer aux académiciens des plis cachetés, on s’empressera de publier ses moindres
observations pour peu qu’elles soient nouvelles, et on ajoutera « je ne sais pas le reste ».

4. L’environnement leftbar :
L’environnement leftbar permet d’avoir un trait vertical dans la marge de gauche du texte qu’il
contiendra.
Exemple : Le code :

\begin{leftbar}
Je r\^eve d’un jour o\‘u l’égo\"{\i}sme ne régnera plus dans
les sciences, o\‘u on s’associera pour étudier, au lieu
d’envoyer aux académiciens des plis cachetés, on
s’empressera de publier ses moindres observations
pour peu qu’elles soient nouvelles, et on ajoutera \og je
ne sais pas le reste \fg.
\end{leftbar}

donne :

Je rêve d’un jour où l’égoïsme ne régnera plus dans les sciences, où on s’associera pour étudier,
au lieu d’envoyer aux académiciens des plis cachetés, on s’empressera de publier ses moindres
observations pour peu qu’elles soient nouvelles, et on ajoutera « je ne sais pas le reste ».

5.6.2 Comment redéfinir l’environnement leftbar pour pouvoir modi-


fier certaines de ses mesures et de ses couleurs
L’environnement leftbar tel qu’il est défini ci-dessus nous laisse guère le choix sur ses mesures
(comme l’épaisseur du trait vertical et l’espace séparant ce trait du texte de l’environnement) et
ses couleurs (comme la couleur du trait vertical et la couleur de fond du texte de l’environnement).
Pour pouvoir modifier ces mesures et ces couleurs, on a créé un petit programme LATEX qu’on devrait
mettre au préambule de notre document (avant \begin{document}). Ce programme est le suivant :

38 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

\newlength{\leftbarwidth}
\newlength{\leftbarsep}
\newcommand*{\leftbarcolorcmd}{\color{leftbarcolor}}
\renewenvironment{leftbar}{
\def\FrameCommand{{\leftbarcolorcmd{
\vrule width \leftbarwidth \hspace{\leftbarsep}}}
\fboxsep=\FrameSep\colorbox{colorboxcolor}
}
\MakeFramed {\advance \hsize-\width \FrameRestore}
}{
\endMakeFramed}

Attention : Ne pas oublier de charger les packages framed et color (ou xcolor).
Pour construire après, dans le corps de notre document, un texte avec une barre verticale à sa gauche
tel que :
– L’épaisseur de la bare verticale soit de 1 pt,
– L’espace qui sépare la bare verticale du texte soit de 2 pt (en plus des 4 pt qui sont laissées
par défaut),
– La couleur de la bare verticale soit rouge,
– La couleur de fond du texte soit jaune ;
on tape 3 :

\setlength{\leftbarwidth}{1pt}
\setlength{\leftbarsep}{2pt}
\colorlet{leftbarcolor}{red}
\colorlet{colorboxcolor}{yellow}
\begin{leftbar}\noindent
Beaucoup de rois et de princes du monde islamique médiéval ont
créé dans leurs pays des conditions favorables pour le travail
des mathématiciens et astronomes. Mais on trouve peu d’exemples
d’un roi qui s’est occupé lui-m\^eme de l’étude des sciences mathématiques.
Un cas bien connu est celui d’Ulugh Beg, roi à Samarcande au commencement
du quinzième siècle, qui a fondé un observatoire astronomique, dans
leguel il a employé plus de soixante mathématiciens et astronomes, et
qui a lui-m\^eme participé activement aux discussions des sujets mathématiques
et astronomiques. Moins connu jusqu’à présent était le cas des deux
{\sc Bani Hud}, rois de Saragosse, en Espagne: {\sc Ahmad Al-Muqtadir},
qui régna de 1041 jusqu’à 1081, et son fils et successeur {\sc Al-Mutaman},
qui mourut en 1085.
\end{leftbar}

Ce qui donne :

3. Ce texte est extrait de l’article de J.P. Hogendijk, intitulé : “Le Roi-Géomètre Al-Mutaman Ibn Hud et
son livre de la perfection (Kitab Al-Istikmal)”.

39 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 5. LES BOITES

Beaucoup de rois et de princes du monde islamique médiéval ont


créé dans leurs pays des conditions favorables pour le travail des
mathématiciens et astronomes. Mais on trouve peu d’exemples d’un
roi qui s’est occupé lui-même de l’étude des sciences mathématiques.
Un cas bien connu est celui d’Ulugh Beg, roi à Samarcande au com-
mencement du quinzième siècle, qui a fondé un observatoire astrono-
mique, dans leguel il a employé plus de soixante mathématiciens et
astronomes, et qui a lui-même participé activement aux discussions des
sujets mathématiques et astronomiques. Moins connu jusqu’à présent
était le cas des deux Bani Hud, rois de Saragosse, en Espagne : Ah-
mad Al-Muqtadir, qui régna de 1041 jusqu’à 1081, et son fils et
successeur Al-Mutaman, qui mourut en 1085.

Une dernière remarque : Pour ne laisser aucun espace entre la barre verticale et le texte en
question, utiliser le code \setlength{\leftbarsep}{-4pt}.

40 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 6
LES FIGURES

6.1 Eléments de base


Pour insérer une figure (ou une image) en Latex, on a besoin du package :

\usepackage{graphicx}

qu’il faudrait donc charger préalablement à l’en-tête de votre document Latex.


Pour insérer ensuite une figure à l’intérieur du document, on utilise l’environnement figure. Si par
exemple le nom de notre figure est khawarizmi.eps, le code d’insertion de celle-ci serait :

\begin{figure}
\centering
\includegraphics{khawarizmi.eps}
\caption{Le grand mathématicien arabe AL-Khawarizmi}
\label{kha}
\end{figure}

Explication du code :
1. Les commandes \begin{figure} et \end{figure} définissent l’environnement figure. Cet en-
vironnement demande à Latex de placer la figure en question dans l’endroit le plus convenable.
Pour placer notre figure dans un endroit de notre choix (même s’il n’est pas convenable), on doit
ajouter à \begin{figure} l’une des lettres : h, t, b ou p qu’on mettra entre deux crochets comme
ceci :

\begin{figure}[h]

La signification de chacune des lettres h, t, b et p est donnée par ce qui suit :


• h (comme here) permet de placer la figure là ou on est arrivé dans le tapement de notre document.
• t (comme top) permet de placer la figure tout en haut de la page courante du document.
• b (comme bottom) permet de placer la figure tout en bas de la page courante du document.
• p (comme page) permet de placer la figure sur une page séparée (après la page courante).
Pour insister sur son choix de placement de sa figure, on ajoute un point d’exclamation juste avant
l’une des lettres h, t, b ou p, comme ceci :

\begin{figure}[!h]

41
Bakir FARHI CHAPITRE 6. LES FIGURES

2. La commande \centering permet juste de centrer la figure.


3. La commande \includegraphics est celle qui insère la figure souhaitée (dans notre exemple, il
s’agit de la figure khawarizmi.eps).
Noter que la figure à insérer doit se trouver dans le même répertoire que le document Latex en
question. Pour une gestion plus aisée et plus professionnelle des figures nécessaires à un document
Latex, on conseille de mettre toutes ces figures dans un même répertoire que l’on met (obligatoire-
ment) dans le même endroit où se trouve notre document Latex. Dans notre exemple précédent, si
notre figure khawarizmi.eps se trouvait dans un répertoire nommé Rep, on informerait Latex de ce
répertoire par le code :
\includegraphics{Rep/khawarizmi.eps}
4. La commande \caption associe une légende (c’est-à-dire un titre) à notre figure. Cette légende
apparaitra, selon le placement du code \caption, en dessus ou en dessous de la figure en question.
Pour notre exemple précédent, on obtient (après compilation) ce qui suit :

Figure 6.1 – Le grand mathématicien arabe AL-Khawarizmi

Noter que la numérotation des figures est automatique et est toujours précédée du nom Fig. par
défaut ; on verra plus loin comment éliminer ou changer ce nom par un autre. Noter aussi que le
placement de la légende d’une figure est (par défaut) centré par rapport à la largeur de la figure.
5. Finalement, la commande \label a pour rôle de référencer la figure en lui attribuant un mot clé.
Dans notre cas le mot clé est kha. Pour se référer alors à cette figure dans notre document Latex,
on écrira par exemple :
...(voir la figure \ref{kha})...
Ce qui donnera dans les fichiers dvi et pdf :
. . .(voir la figure 6.1) . . .
Pour se référer à la page où se trouve notre figure, on écrira dans notre document Latex :
...(voir la figure de la page \pageref{kha})...
Ce qui donnera :
. . .(voir la figure de la page 42) . . .
Remarque : On n’est pas obligé de préciser l’extension (ici eps) de la figure à insérer dans un
document Latex. On aurait pu écrire simplement dans l’exemple précédent :
\includegraphics{khawarizmi}

42 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

6.2 Comment modifier la taille d’une figure à insérer


La commande \includegraphics contient des arguments qui permettent de modifier la taille de
sa figure d’origine. Les plus utilisés parmi ces arguments sont :
• width (qui veut dire largeur en anglais) : Il sert à spécifier la largeur que l’on souhaite adapter à
sa figure en l’agrandissant ou on la réduisant. Il est donné en cm, mm ou pt.
• height (qui veut dire hauteur en anglais) : Il sert à spécifier la hauteur que l’on souhaite adapter
à sa figure. Il est donné en cm, mm ou pt.
• scale (qui veut dire échelle en anglais) : Il sert à spécifier l’échelle que l’on souhaite adapter à sa
figure (par exemple égale à 0.5 si l’on souhaite réduire à moitié les dimensions de sa figure ;
égale à 2 si l’on souhaite les doubler).
• angle : Il sert à spécifier l’angle de rotation (dans le sens contraire à l’aiguille d’une montre) que
l’on souhaite faire subir à sa figure. Il est donné en degré.
Ces arguments doivent être spécifier entre crochets juste après la commande \includegraphics.
Si l’on souhaite par exemple que notre figure khawarizmi.eps soit réduite à une largeur de 3 cm et
une hauteur de 6 cm, on écrira le code :

\includegraphics[width=3cm,height=6cm]{khawarizmi}

Si l’on souhaite maintenant que notre figure prenne par exemple comme largeur la moitié de la
largeur d’une ligne (complète) de texte dans notre document et qu’elle prenne comme hauteur 3/10
de la hauteur d’une page (en texte) de notre document, on écrira le code :

\includegraphics[width=0.5\textwidth,height=0.3\textheight]{khawarizmi}

La spécification width=0.5\textwidth pourrait s’avérer très utile pour écrire un texte suivi, à son
coté droit, d’une figure (graphique, image ou photo) comme c’est le cas par exemple d’un CV avec
photo. On reviendra là dessus un peu plus loin.
Si l’on souhaite maintenant que notre figure se réduise à la moitié de ses dimensions réelles, on
écrira le code :

\includegraphics[scale=0.5]{khawarizmi}

Noter que dans \includegraphics, il est possible de ne mettre aucun argument (comme on l’a
déjà fait tout au début de ce chapitre) comme il est aussi possible d’en mettre un ou plusieurs.

6.3 Comment mettre sa figure dans un cadre


Pour qu’une figure insérée apparaisse dans un cadre, on utilisera la commande \fbox. Pour notre
exemple, on devra écrire le code :

\fbox{\includegraphics[...]{khawarizmi}}

On peut aussi mettre notre figure dans un cadre spécifique. Pour notre exemple, si l’on souhaite
encadrer notre figure khawarizmi.eps dans un cadre qui sera espacé d’elle de 1 cm et aura une
bordure d’épaisseur 2 pt, on tapera le code :

\setlength\fboxsep{1cm}
\setlength\fboxrule{2pt}
\fbox{\includegraphics[...]{khawarizmi}}

Ce qui donnera ceci :

43 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

Figure 6.2 – Le grand mathématicien arabe AL-Khawarizmi

(Bien entendu, on a réduit les dimensions de notre figure d’origine en utilisant les commandes citées
auparavant).

6.4 Insertion de figures d’extension autre que eps


• Si l’on compile avec LATEX, le seul format de figures accepté est le format eps (Encapsulated
PostScript). Le format eps est défini par le système Adobe ; c’est un format vectoriel 1 de très haute
qualité, ce qui donne la facilité à Latex de le redimensionner comme on le souhaite sans que la figure
perde sa qualité.
Plusieurs logiciels convertissent facilement les formats jpg, png ou pdf en eps. Par exemple Gsview
convertit les format pdf et ps en eps ; le logiciel professionnel Adobe Illustrator convertit presque
n’importe quel format d’image au format eps.
Pour convertir une image d’extension jpg ou png au format eps sans utiliser le logiciel commercial
Adobe Illustrator, on peut procéder comme suit :
— On convertit d’abord l’image en question au format pdf en utilisant par exemple le logiciel gratuit
PDFill ou en utilisant simplement une imprimante virtuelle telle pdf 995.
— Ensuite, on utilise Gsview pour convertir l’image pdf ainsi obtenue au format eps.
• Si l’on compile avec PDFLATEX pour obtenir directement le fichier pdf de notre document, on a le
choix sur le format de la figure à insérer : Les formats jpg, png et pdf sont acceptés. Le format jpg est
particulièrement idéal pour les photos. En revanche, on ne peut pas insérer une figure de format eps.
Noter aussi que la mention de l’extension de la figure à insérer via la commande \includegraphics
n’est pas obligatoire.
• Lorsqu’un fichier pdf contient plusieurs pages et que l’on souhaite insérer précisément comme figure
dans un document Latex, la page numéro n de ce fichier, on indiquera ceci à Latex par l’argument
“page=n” qu’on ajoutera entre crochets à la commande \includegraphics comme ceci :

\includegraphics[page=n]{nom du fichier pdf en question}

Exemple : On souhaite insérer dans le présent document la page 8 de mon livre sur les sujets de
Brevet, c’est-à-dire la page 8 du fichier pdf nommé bef.pdf. On devra alors utiliser le code suivant :

1. La qualité de l’image reste la même lorsqu’on agrandit la figure.

44 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

\begin{figure}[!h]
\centering
\includegraphics[scale=0.3,page=8]{bef}
\caption{La page 8 de mon livre de BEF}
\end{figure}

Ce qui donnera après compilation, en utilisant obligatoirement PDFLATEX (et non pas LATEX), ceci :

Figure 6.3 – La page 8 de mon livre de BEF

N.B : Sans indiquer le numéro de la page à insérer d’un fichier pdf, PDFLATEX insère par défaut la
première page du fichier.

6.5 Insertion de plusieurs figures côte à côte


On dispose de photos (en format eps) des trois grands mathématiciens arabes : Al Khawarizmi, Abu
Kamil et Abu Al Wafa. Les fichiers eps en question sont nommés :

khawarizmi2.eps
abukamil.eps
abualwafa.eps

Pour mettre ces trois photos côte à côte avec une même légende, on peut utiliser simplement le
code suivant :

\begin{figure}[!h]
\centering
\includegraphics[width=0.3\textwidth,height=5cm]{khawarizmi2}
\includegraphics[width=0.3\textwidth,height=5cm]{abukamil}
\includegraphics[width=0.3\textwidth,height=5cm]{abualwafa} \\
\caption{Trois grands mathématiciens arabes}
\end{figure}

Ce qui donne après compilation ceci :

45 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

Figure 6.4 – Trois grands mathématiciens arabes

Noter bien que l’on a redimensionné nos photos à une même largeur (qui fait 0.3 de la largeur d’une
ligne de texte) et une même hauteur (qui est de 5 cm). Ceci a pour but d’avoir un alignement idéal.
Au lieu du code ci-dessus, on peut utiliser un code plus professionnel mais qui donne pratiquement
le même résultat. Il s’agit d’un code utilisant en plus l’environnement tabular pour mettre chacune
des trois photos dans une case d’un tableau de format : 1 lignes × 3 colonnes. Il est donné par :

\begin{figure}[!h]
\centering
\begin{tabular}{ccc}
\includegraphics[width=0.3\textwidth,height=5cm]{khawarizmi2} &
\includegraphics[width=0.3\textwidth,height=5cm]{abukamil} &
\includegraphics[width=0.3\textwidth,height=5cm]{abualwafa}
\end{tabular}
\caption{Trois grands mathématiciens arabes}
\end{figure}

Ce qui donne après compilation ceci :

Figure 6.5 – Trois grands mathématiciens arabes

On constate que la seule différence avec le code d’avant est qu’ici les trois photos sont un peu plus
espacées entre elles.
Si l’on souhaite maintenant faire apparaître au dessous de chacune des trois photos le nom du
mathématicien qu’elle représente, il est nécessaire d’utiliser l’environnement tabular afin de créer (à
l’intérieur de l’environnement figure) un tableau de format : 2 lignes × 3 colonnes. Le code complet
est le suivant :

\begin{figure}[!h]
\centering
\begin{tabular}{ccc}

46 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

\includegraphics[width=0.3\textwidth,height=5cm]{khawarizmi2} &
\includegraphics[width=0.3\textwidth,height=5cm]{abukamil} &
\includegraphics[width=0.3\textwidth,height=5cm]{abualwafa} \\
Al Khawarizmi &
Abu Kamil &
Abu Al Wafa
\end{tabular}
\caption{Trois grands mathématiciens arabes}
\end{figure}

Ce qui donne après compilation ceci :

Al Khawarizmi Abu Kamil Abu Al Wafa

Figure 6.6 – Trois grands mathématiciens arabes

Si l’on souhaite maintenant que chacune des trois photos prenne une légende à elle seule, on doit
utiliser à l’intérieur de l’environnement figure l’environnement minipage qui permet de créer des
petites pages de largeur voulue. L’idée consiste à mettre chaque figure dans une minipage réservée
à elle seule afin de pouvoir lui affecter une légende dans cette minipage. Le code qu’on utilisera est
le suivant :

\begin{figure}[!h]
\begin{minipage}{0.3\textwidth}
\centering
\includegraphics[width=\textwidth,height=5cm]{khawarizmi2}\\
\caption{Al Khawarizmi}
\end{minipage}
\begin{minipage}{0.3\textwidth}
\centering
\includegraphics[width=\textwidth,height=5cm]{abukamil}\\
\caption{Abu Kamil}
\end{minipage}
\begin{minipage}{0.3\textwidth}
\centering
\includegraphics[width=\textwidth,height=5cm]{abualwafa}\\
\caption{Abu Al Wafa}
\end{minipage}
\end{figure}

Ce qui donnera après compilation ceci :

47 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 6. LES FIGURES

Figure 6.7 – Al Khawarizmi Figure 6.8 – Abu Kamil Figure 6.9 – Abu Al Wafa

Quelques éclaircissements sur le code précédent :


• Avec la commande \begin{minipage}{0.3\textwidth}, on a créé une minipage de largeur
faisant 0.3 de la largeur d’une ligne de texte. Ensuite, avec la commande :

\includegraphics[width=\textwidth,height=5cm]{khawarizmi2},

on a mis la figure khawarizmi2.eps dans la minipage créée à cet effet après l’avoir redimensionnée à
une largeur égale à la largeur du texte de la minipage qui la contient et à une hauteur de 5 cm.
• Bien que chaque figure a sa propre légende, on pourra mettre en plus une légende globale pour
les trois figures. Pour ce faire, on n’a qu’à ajouter cette légende après le dernier \end{minipage},
c’est-à-dire juste avant \end{figure}.

48 ⃝
c http://farhi.bakir.free.fr/
CHAPITRE 7
DESSINER EN UTILISANT LE PACKAGE PSTRICKS

PSTricks est un package permettant de construire des figures géométriques directement par des
codes Latex, via l’environnement pspicture. Ce package nécessite de passer par le postscript ; on doit
donc absolument obtenir le fichier ps avant le fichier pdf. Ainsi, on ne peut pas compiler le fichier
source (tex) avec le compilateur PdfLatex par exemple. Pour obtenir le fichier pdf à la suite du fichier
ps, on doit utiliser un bon convertisseur ps-pdf comme le ps2pdf par exemple. Malheureusement, il
n’y a pas de bon convertisseur ps-pdf gratuit mais on verra par la suite une astuce permettant d’y
remédier à ce problème.

7.1 Codes de base


Pour utiliser l’environnement pspicture, on doit préalablement charger le package pstricks à l’en-tête
du document Latex par la commande :
\usepackage{pstricks}
L’environnement pspicture crée une boite rectangulaire dans laquelle on mettra nos figures géomé-
triques souhaitées (point, ligne, cercle, . . .). Cette boite est caractérisée par son point du bas à
gauche et son point du haut à droite. Les unités de mesure sont par défaut : le centimètre pour
les longueurs et le degré pour les angles. Pour mettre notre figure géométrique dans une boite de
format 10 cm × 10 cm par exemple, on utilise le code :
\begin{pspicture}(0,0)(10,10)
......................
\end{pspicture}
Ici (0, 0) représente les coordonnées du point du bas à gauche de la boite et (10, 10) désigne les
coordonnées de son point du haut à droite. Noter que ce code est aussi équivalent à :
\begin{pspicture}(10,10)
......................
\end{pspicture}
car si le point du bas à gauche n’est pas mentionné, l’environnement pspicture le prend par défaut
(0, 0).

7.2 Lignes, vecteurs et lignes brisés


• Pour dessiner une ligne (c’est-à-dire un segment) reliant deux points de coordonnées (x0 , y0 ) et
(x1 , y1 ), il suffit d’insérer à l’intérieur de l’environnement pspicture le code :

49
Bakir FARHI CHAPITRE 7. DESSINER EN UTILISANT LE PACKAGE PSTRICKS

\psline(x0 , y0 )(x1 , y1 )

• Pour dessiner un vecteur dont le point de départ a pour coordonnées (x0 , y0 ) et le point d’arrivée
a pour coordonnées (x1 , y1 ), on utilise le code :

\psline{->}(x0 , y0 )(x1 , y1 )

Le vecteur opposé de ce vecteur 1 peut s’obtenir par le code :

\psline{<-}(x0 , y0 )(x1 , y1 )

• Le segment fléché en ses deux extrémités (x0 , y0 ) et (x1 , y1 ) s’obtient par le code :

\psline{<->}(x0 , y0 )(x1 , y1 )

Le segment fléché en ses deux extrémités s’utilise en général pour mentionner des mesures de
grandeurs.
• Une ligne brisée passant par des points de coordonnées (x0 , y0 ), (x1 , y1 ), . . . , (xn , yn ) (dans cet
ordre) s’obtient par le code :

\psline(x0 , y0 )(x1 , y1 ) . . . (xn , yn )

Remarquer qu’il est possible de se servir de ce code pour tracer un polygone. Par exemple pour
dessiner le triangle (ABC), avec A(0, 0), B(1, 1) et C(1, 0), il suffit d’utiliser le code :

\psline(0, 0)(1, 1)(1, 0)(0, 0)

Plus loin, on découvrira un code plus approprié aux polygones.

Les arguments de psline


La commande \psline possède des arguments optionnels importants qui caractérisent la ligne à
tracer ; par exemple : la couleur de la ligne, son épaisseur, . . . etc. Ces arguments doivent être
mentionnés entre deux crochets qu’on mettra juste après \psline. L’essentiel de ces arguments est
donné par le tableau suivant :

Argument Son effet


linewidth = épaisseur Ligne d’épaisseur épaisseur
linecolor = couleur Ligne de couleur couleur
linestyle = dashed Ligne en tirets (- - - - - -)
linestyle = dotted Ligne en pointillés (............)
doubleline = true Ligne doublée

Exemple : Pour tracer une ligne en pointillés liant entre les deux points de coordonnées (1, 1) et
(3, 5) et qui soit de couleur bleu et d’épaisseur 2 pt, on utilise le code :

\psline[linewidth=2pt,linecolor=blue,linestyle=dotted](1,1)(3,5)

1. C’est-à-dire le vecteur dont le point de départ a pour coordonnées (x1 , y1 ) et le point d’arrivée a pour
coordonnées (x0 , y0 ).

50 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 7. DESSINER EN UTILISANT LE PACKAGE PSTRICKS

Dessiner un segment avec des extrémités apparentes


Pour dessiner un segment liant entre deux points (x0 , y0 ) et (x1 , y1 ), lesquels sont apparents 2 , on
doit ajouter comme argument à \psline :

showpoints=true

et on précisera le type du symbole montrant les extrémités par l’argument :

dotstyle=symbole

où symbole prend comme valeur l’un des symboles suivants :


+ , × , | , square (carré vide) , square* (carré plein) , diamond (losange vide)
, diamond* (losange plein) , triangle (triangle vide) , triangle* (triangle plein).
En cas d’absence de précision du type du symbole voulu pour pointer les extrémités d’un segment,
Latex prendra par défaut le type point gras (•).
On peut en outre préciser l’échèle (c’est-à-dire l’épaisseur) du symbole voulu pour pointer les deux
extrémités d’un segment. Pour ce faire, il suffit d’ajouter l’argument :

dotscale=échèle voulue

L’échèle est bien entendu un nombre strictement positif.


Exemple 1 : Pour tracer le segment de droite liant entre les deux points de coordonnées (0, 0) et
(3, 3) et pointer ses extrémités par des points gras d’échèles 0.5 (donc des petits points gras),
on utilise le code :

\psline[showpoints=true,dotscale=0.5](0,0)(3,3)

Exemple 2 : Pour dessiner la figure suivante :

| | | |

on peut utiliser le code complet :

\begin{pspicture}(3,3)
\psline[linewidth=1pt,linecolor=green,showpoints=true,
dotstyle=|,dotscale=2](0,0)(1,0)(2,0)(3,0)
\end{pspicture}

7.3 Polygones
• Pour dessiner un polygone dont les sommets ont pour coordonnées (x1 , y1 ), (x2 , y2 ), . . . , (xn , yn )
(dans cet ordre), on utilise le code :

\pspolygon(x1 , y1 )(x2 , y2 ) . . . (xn , yn )

Les arguments que l’on puisse utiliser tels : la couleur des côtés, l’épaisseur des côtés, . . . etc
se codent de la même faccon que pour les lignes.
Exemple : Pour dessiner le rectangle suivant :

2. C’est-à-dire pointés par un certain symbole comme une croix (×), un point gras (•), un trait vertical (|),
. . . etc.

51 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 7. DESSINER EN UTILISANT LE PACKAGE PSTRICKS

on utilise le code complet :

\begin{pspicture}(2,2)
\pspolygon[linewidth=2pt,linecolor=red](0,0)(2,0)(2,1)(0,1)
\end{pspicture}

• Pour dessiner un polygone plein dont les sommets ont pour coordonnées (x1 , y1 ), (x2 , y2 ), . . . ,
(xn , yn ) (dans cet ordre), on utilise le code :

pspolygon*(x1 , y1 )(x2 , y2 ) . . . (xn , yn )

Par exemple, le code complet :

\begin{pspicture}(2,2)
\pspolygon*[linecolor=green](0,0)(2,0)(2,1)(0,1)
\end{pspicture}

donne le rectangle vert plein :

7.4 Cercles, arcs de cercle et ellipses


• Pour dessiner le cercle de centre (x0 , y0 ) et de rayon r, on utilise le code :

\pscircle[arguments](x0 , y0 ){r}

Les arguments pouvant être utiles dans ce code sont : l’épaisseur du cercle en question et la
couleur de sa circonférence.
• Pour avoir un cercle plein (c’est-à-dire un disque), il suffit de remplacer la commande \pscircle
par \pscircle*. On peut aussi utiliser la commande \qdisk mais sachez que celle-ci n’accepte pas
d’arguments !
• Pour dessiner l’arc du cercle de centre (x0 , y0 ) et de rayon r, qui part d’un angle θ1 et va vers un
angle θ2 (où les deux angles θ1 et θ2 sont données en degré), on utilise le code :

\psarc[arguments](x0 , y0 ){r}{θ1 }{θ2 }

Exemple : Le code complet :

\begin{pspicture}(2,2)
\psline[linewidth=2pt,linecolor=red]{->}(-2,0)(2,0)
\psline[linewidth=2pt,linecolor=red]{->}(0,-2)(0,2)
\psarc[linewdith=2pt,linecolor=green](0,0){2}{30}{80}
\end{pspicture}

donne :

52 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 7. DESSINER EN UTILISANT LE PACKAGE PSTRICKS

Le même code avec \psarc remplacé par \psarc* donne :

• Pour dessiner l’arc orienté du cercle de centre (x0 , y0 ) et de rayon r, qui part d’un angle θ1 et
va vers un angle θ2 , on utilise le code :
\psarc[arguments]{->}(x0 , y0 ){r}{θ1 }{θ2 }
Exemple : Le code complet :
\begin{pspicture}(2,2)
\psline[linewidth=2pt,linecolor=red]{->}(-2,0)(2,0)
\psline[linewidth=2pt,linecolor=red]{->}(0,-2)(0,2)
\psarc[linewdith=2pt,linecolor=green]{->}(0,0){2}{30}{80}
\end{pspicture}
donne :

• Pour dessiner le secteur vide du disque de centre (x0 , y0 ) et de rayon r, qui part d’un angle θ1
et va vers un angle θ2 , on utilise le code :
\pswedge[arguments](x0 , y0 ){r}{θ1 }{θ2 }
Pour dessiner le secteur plein correspondant, il suffit de remplacer \pswedge par \pswedge*.
Exemple : Le code complet :
\begin{pspicture}(2,2)
\pswedge[linewdith=2pt,linecolor=green](0,0){2}{30}{80}
\end{pspicture}
donne :

53 ⃝
c http://farhi.bakir.free.fr/
Bakir FARHI CHAPITRE 7. DESSINER EN UTILISANT LE PACKAGE PSTRICKS

Le même code avec \pswedge remplacé par \pswedge* donne :

54 ⃝
c http://farhi.bakir.free.fr/

Vous aimerez peut-être aussi