• Aucun résultat trouvé

3.4.1 Commande \mbox

La commande \mbox permet à LATEX de considérer son argument comme une seule entité. Elle peut ainsi empêcher la coupure d’un mot (une césure) ou d’un groupe de mots(11) : la commande crée donc une boîte insécable autour du texte. Le texte concerné ne doit pas faire plus d’une ligne. La longueur de la boîte (du bloc) est calculée automatiquement pour être égale à la longueur du texte.

Pour qu’uneformulene soit pas coupée en fin de ligne et écrite sur deux lignes, on saisira\mbox{formule}.

(10). Les macros sont détaillées dès la page 84.

(11). Tout comme lorsque l’on crée un tableau avec l’environ-nementtabular, celui-ci est considéré comme un seul bloc et le compilateur ne le coupera jamais en plusieurs parties.

CHAPITRE 3. MISE EN FORME – MISE EN VALEUR C’est, par exemple, le cas avec l’égalité

sin2x+ cos2x= 1.(12)

...ité \mbox{$\sin^2 x+\cos^2 x=1$}

On peut aussi s’en servir pour écrire du texte dans une formule :

x= 1ou x= 2

$x=1 \mbox{ ou } x=2$

3.4.2 Commande \makebox

La commande\makebox est un peu plus fournie. On peut spécifier la largeur de la boîte et la position du texte à l’intérieur par le biais de deux options de la commande. La forme générale de la commande est :

\makebox[Largeur][Position]{Texte} Largeur est la largeur de la boîte. Elle peut être égale à une longueur usuelle (en mm, cm, in), en fonction de la longueur de texte disponible, . . .(13)

Position est la position du texte dans la boîte : l pour l’aligner sur la gauche de la boîte ; r pour l’aligner sur la droite de la boîte ;

spour l’aligner sur toute la longueur de la boîte.

Par défaut, si rien n’est spécifié, le texte est centré.

Ces paramètres sont locaux : en dehors de la com-mande, leur valeur n’est plus utilisable.

Texte centré Texte à gauche

Texte à droite

Sur toute la largeur

\makebox[6cm]{Texte centré}

\makebox[6cm][l]{Texte à gauche}

\makebox[6cm][r]{Texte à droite}

\makebox[6cm][s]{Sur toute la largeur}

On peut s’en servir pour placer dans des textes des

« trous »(14) que les élèves peuvent compléter :

Elle a pour paramètres et .

Elle a pour paramètres . . . et . . . . La \makebox[3cm]{} a pour ...

La \makebox[3cm]{\dotfill} a pour...

Propriétés à savoir par cœur :

(12). Le fait de ne pas demander un retour à la ligne après

« égalité » implique ces espaces blancs entre les mots sur la ligne précédant l’égalité.

(13). On verra dans ce dernier cas des exemples (plus visibles car encadrés) avec la commande\framebox.

(14). Il y a une macro pour dessiner des lignes de pointillés page 89.

\makebox[8cm][s]{Propr... c\oe ur :}

On peut aussi utiliser des boîtes de largeur nulle, permettant de placer du matériel à un endroit mais en agissant comme s’il n’était pas là : on peut ainsi obtenir des effets particuliers, comme le suivant.

Ligne de texte pour voir la marge.

Bah ! Ce gâteau est///bon infect.

Ligne de texte pour voir la marge.\\

\makebox[0pt][r]{Bah !} Ce g\^ateau

est \texttt{\makebox[0pt][l]{///}bon} infect.

3.4.3 Commandes \fbox et \framebox Ces deux commandes fonctionnent de la même ma-nière que \box et \makebox, si ce n’est qu’elles ajoutent un cadre autour de la boîte. Il s’agit des commandes\fboxet\framebox(15) .

3.4.3.1 Commande \fbox

\fbox{Vrai}donne Vrai .

L’aspect des encadrements peut être réglé avec deux paramètres : le premier est l’espacement ajouté entre le cadre et son contenu \fboxsep (3 pt par défaut) et le second, l’épaisseur du filet\fboxsep(0,4 pt par défaut).

Encadré {\setlength{\fboxsep}{3mm}

\setlength{\fboxrule}{1mm}

\fbox{Encadré}}

Placer ces deux commandes de réglage dans le préam-bule affecte donc tous les encadrés. Si les paramètres doivent être changés localement, on écrit, comme écrit au-dessus, le bloc de saisie entre accolades.

3.4.3.2 Commande \framebox

La boîte suivante est trois fois plus longue(16) que le texte contenu dedans.

Bla bla bla

\framebox[2\width]{Bla bla bla}

La boîte suivante a pour longueur celle du texte dis-ponible du document.

De la largeur du texte du document

(15). Lefest l’initiale deframe, « cadre ».

(16). Dès qu’il y a un calcul de longueur, comme c’est le cas ici, il est nécessaire que l’extensioncalcsoit chargée.

\framebox[\linewidth]{De la largeur...}

La boîte suivante a pour longueur 2 cm de plus que celle du texte.

2 cm de plus

\framebox[\width+2cm]{2\,cm de plus}

3.4.4 Commande \parbox

Avec les boîtes précédentes, on peut seulement insé-rer un texte d’une seule ligne. Pour pouvoir le faire, on utilise un autre type de boîte, obtenu avec la com-mande\parbox.

La commande\parboxprend un paramètre qui est la largeur de la boîte.

Paragraphe 1 Paragraphe 2 Paragraphe 3

\parbox{3cm}{%

Paragraphe 1\medskip Paragraphe 2\medskip Paragraphe 3}

Elle prend également en option l’alignement de la boîte par rapport à la ligne de base. Les valeurs possibles sontb ett.

abcdef

Parag. 1

Parag. 2 abcdef Parag. 1 Parag. 2

\parbox{3cm}{%

abcdef \parbox[b]{2cm}{Parag. 1\\Parag. 2}

abcdef \parbox[t]{2cm}{Parag. 1\\Parag. 2}

Toutefois, on ne peut pas insérer de liste énumérative (enumerate ou itemize). Il faut absolument utiliser dans ce cas une minipage (voir plus bas). De plus, l’indentation est nulle.

3.4.5 Commande \raisebox

La commande\raiseboxpermet d’englober du texte dans une nouvelle boîte et ensuite de la monter ou descendre par rapport à la ligne de base.

Il fautélever

le nombre au carré.

Il faut \raisebox{3mm}{élever} le ...

Il est également possible de préciser la hauteur et la profondeur de cette boîte en utilisant des options de la commande, dont la version complète est :

\raisebox{différence}%

[hauteur][profondeur]{texte} où

• différence spécifie le décalage vertical du texte par rapport à la ligne ;

• hauteur est la taille que LATEX considère comme étant au-dessus de la ligne ;

• profondeur est la taille que LATEX considère comme étant en-dessous de la ligne.

Il fautélever

le nombre au carré.

... \raisebox{3mm}[10mm][5mm]{élever} ...

On peut aussi utiliser cette commande(17)pour écrire les fractions :

3/4 est donné avec la commande

\raisebox{0.5ex}{3}\slash\raisebox{-0.5ex}{4}

3.4.6 Commande \savebox

LATEX sait mémoriser et de recopier le contenu d’une boîte (texte, tableau, image, autre boîte, . . .).

Il existe les commandes suivantes :

• \newsavebox{\MaBoite} pour déclarer une boîte de nom MaBoite;

• \sbox{\MaBoite} pour remplirMaBoite;

• \savebox{\MaBoite}[larg][pos]{contenu} pour remplir MaBoite de largeur larg et de position pos, qui est l, c ou r (aligné à gauche, centré ou aligné à droite) ;

• \usebox{\MaBoite} pour appeler le contenu de

\MaBoite.

L’IREM de Lyon se situe à. . . L’adresse url de IREM de Lyon est. . .

\newsavebox{\monirem}

\sbox{\monirem}{IREM de Lyon}

L’\usebox{\monirem} se situe à\dots{} L’

adresse url de l’\usebox{\monirem} est\dots{}

3.4.7 Minipages

La structure est la suivante :

\begin{minipage}{largeur} texte

\end{minipage}

largeur peut être :

(17). Voire en faire une macro ! Voyez page 84. . .

CHAPITRE 3. MISE EN FORME – MISE EN VALEUR

• une distance, comme 7cmou 20pt;

• un multiple de la largeur\linewidthde la ligne en cours, comme0.25\linewidth.

L’usage d’une minipage se fait essentiellement dans l’un des deux cas suivants.

• Le premier est dû au besoin de centrer un para-graphe justifié (que l’on veut éventuellement enca-drer) car si le texte dépasse la ligne, on ne peut plus utiliser la commande \fbox{}.

• Le second est dû au besoin de mettre côte-à-côte deux textes (ou un texte et une figure ou . . . ).

G. Duhamel écrivait à juste titre que le jeu était une passerelle entre les peuples.

\begin{center} \begin{minipage}{6cm}

G. Duhamel écrivait ...

\end{minipage} \end{center}

G. Duhamel écrivait à juste titre que le jeu était une passerelle entre les peuples.

\begin{center}

\fbox{\begin{minipage}{6cm}

G. Duhamel ... \end{minipage}}

\end{center}

G. Duhamel écrivait à juste titre que le jeu était une passerelle entre les peuples.

\begin{minipage}{0.65\linewidth}

G. Duhamel ...

\end{minipage}

La largeur de la première minipage est égale à 65 % de la largeur du texte disponible (0.65\linewidth).

La figure ci-contre traduit la frac-tion 3/8 à l’aide d’une représenta-tion dite « en camemberts ».

\begin{minipage}{0.65\linewidth}

La figure ...

\end{minipage}

\hfill

\begin{minipage}{3cm}

\begin{pspicture}(-1,-1) ...

\end{pspicture}

\end{minipage}

Pour les notes de bas de page dans une minipage, voir page 80.

Tout comme la commande \parbox, la commande

\minipagea un argument de position :

\begin{minipage}[pos]{largeur} texte

\end{minipage}

3.4.8 Boîtes de couleur 3.4.8.1 Commande \colorbox

La commande \colorbox{couleur}{texte} écrit texte dans un fond coloré en couleur.

Et voilà un exemple colorié !

... un \colorbox{red}{exemple} ...

3.4.8.2 Commande \fcolorbox La commande

\fcolorbox{coul_cadre}{coul_fond}{texte} écrittexte dans un fond coloré encoul_cadre et la couleur du cadre estcoul_fond.

\fcolorbox{red}{yellow}{Vrai}donne Vrai . On peut combiner avec une minipage :

Il n’y a rien de plus sérieux qu’un enfant qui joue. Jeu après jeu, l’en-fant devient « je ».

\fcolorbox{red}{yellow}{%

\begin{minipage}{0.675\linewidth}

Il n’y a rien de plus sérieux...

\end{minipage}}

Par ailleurs, \pagecolor{couleur} affecte une couleur de fond à la page.

3.4.9 Boîtes noires

On peut créer des rectangles complètement noirs.

Pour cela, on utilise la commande

\rule[décalage]{largeur}{hauteur} où

• décalage permet de spécifier le décalage par rap-port à la ligne de texte : une valeur positive le place au-dessus alors qu’une négative, en dessous ;

• largeur est la largeur du rectangle ;

• hauteur est sa hauteur (ou épaisseur).

La taille de la boîte est précisée par les deux derniers arguments.

abc

abc\rule[3mm]{5cm}{0.25cm}

Texte

\rule{2cm}{1mm} Texte \rule{4cm}{1mm}

Si l’on veut tracer une ligne d’épaisseur 1 mm sur toute la largeur du texte(18) , on écrit(19) :

\rule{\linewidth}{1mm}

Si l’on veut tracer une ligne d’épaisseur 1 mm, centrée sur la moitié de la largeur du texte, on écrit :

\begin{center}

\rule{0.5\linewidth}{1pt}

\end{center}

Il est possible de créer une boîte noire de longueur 0 et de hauteur non nulle : elle est invisible. Elle s’ap-pelle alors un strut. Elle s’utilise, entre autres, pour agrandir une ligne dans un tableau (voir page 67).