Ceci est une ancienne révision du document !


Comment encadrer du texte?

La commande de base: '\fbox'

$\Reponse$ La commande \fbox met son argument dans une boîte (comme \parbox) puis dessine un cadre autour:

Je souhaite \fbox{encadrer} un mot
dans un paragraphe.

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\pagestyle{empty}
\begin{document}

Je souhaite \fbox{encadrer} un mot dans un paragraphe.

\end{document}

Mais attention: tout le texte passé à la commande va se retrouver sur une seule ligne, sans coupure de mot possible!

Pour encadrer tout un paragraphe, une solution est de le placer dans un environnement minipage:

\fbox{%
\begin{minipage}{0.75\textwidth}
   Je souhaite encadrer tout un
   paragraphe, sur plusieurs lignes.
\end{minipage}
}

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\usepackage{microtype}
\pagestyle{empty}
\begin{document}

\fbox{%
\begin{minipage}{0.75\textwidth}
   Je souhaite encadrer tout un
   paragraphe, sur plusieurs lignes.
\end{minipage}
}

\end{document}
On peut changer l'épaisseur du trait et l'espace entre le texte et le trait en modifiant la valeur des longueurs \fboxrule et \fnboxsep, respectivement:
Je souhaite \fbox{encadrer} un mot
dans un paragraphe.
 
\setlength{\fboxrule}{2pt}
Je souhaite \fbox{encadrer} un mot
dans un paragraphe.
 
\setlength{\fboxsep}{1.5ex}
Je souhaite \fbox{encadrer} un mot
dans un paragraphe.

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\pagestyle{empty}
\begin{document}

Je souhaite \fbox{encadrer} un mot
dans un paragraphe.

\setlength{\fboxrule}{2pt}
Je souhaite \fbox{encadrer} un mot
dans un paragraphe.

\setlength{\fboxsep}{1.5ex}
Je souhaite \fbox{encadrer} un mot
dans un paragraphe.

\end{document}

$\Reponse$ Une autre solution simple et efficace consiste à définir un tableau d'une seule cellule:

\begin{tabular}{|p{5cm}|}
\hline
On ne dirait pas, mais il s'agit
ici d'un tableau. \\
\hline
\end{tabular}

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\pagestyle{empty}
\begin{document}

\begin{tabular}{|p{5cm}|}
\hline
On ne dirait pas, mais il s'agit ici d'un tableau. \\
\hline
\end{tabular}

\end{document}

Fonctionnalités avancées: présentation de quelques packages

$\Reponse$ Le package fancybox définit des commandes telles que \shadowbox, \doublebox et \ovalbox, qui fonctionnent de la même manière que \fbox ci-dessus:

\usepackage{fancybox}
 
\shadowbox{Texte ombré.}
\doublebox{Texte doublement encadré.}
\ovalbox{Texte dans un cadre
  aux coins arrondis.}

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\usepackage{fancybox}
\pagestyle{empty}
\begin{document}

\shadowbox{Texte ombré.}
\smallskip

\doublebox{Texte doublement encadré.}
\smallskip

\ovalbox{Texte dans un cadre
  aux coins arrondis.}
\end{document}

FIXME Détailler les packages tcolobox et bclogo.

$\Reponse$ Le package boxedminipage est un vieux style \LaTeX 2.09 qui a été actualisé.

$\Reponse$ Le package niceframe permet de définir des cadres pleine page.

$\Reponse$ Pour encadrer un texte pouvant s'étendre sur plusieurs pages, on peut utiliser l'environnement breakbox du package boites.

Le package boitesexemples définit les environnements boiteepaisseavecuntitre, boitenumeroteeavecunedoublebarre, boiteavecunelignequiondulesurlecote et boitecoloriee qui proposent différentes méthodes d'encadrement.

  • bkcounttrue les lignes sont numérotées ;
  • bkcountfalse elles ne le sont pas (défaut).

On peut emboîter ces environnements.

Pour les bricoleurs: définir un nouvel environnement

Les packages présentés ci-dessus sont évidemment bien plus plus puissants, mais à titre pédagogique, voici comment on pourrait écrire soi-même un environnement pour encadrer des paragraphes de texte:

fmpage.sty
\newsavebox{\fmbox}
\newenvironment{fmpage}[1]
    {\begin{lrbox}{\fmbox}\begin{minipage}{#1}}
    {\end{minipage}\end{lrbox}\fbox{\usebox{\fmbox}}}

Utilisation de l'environnement défini par fmpage.sty:

\input{fmpage.sty}
 
\begin{fmpage}{3cm}
   Texte à encadrer dans une boîte
   ne dépassant pas 3 centimètres
   de large.
\end{fmpage}

\documentclass{article}
\usepackage[width=6cm,height=7cm]{geometry}
\pagestyle{empty}

\newsavebox{\fmbox}
\newenvironment{fmpage}[1]
    {\begin{lrbox}{\fmbox}\begin{minipage}{#1}}
    {\end{minipage}\end{lrbox}\fbox{\usebox{\fmbox}}}

\begin{document}

\begin{fmpage}{3cm}
   Texte à encadrer dans une boîte
   ne dépassant pas 3 centimètres
   de large.
\end{fmpage}

\end{document}
2_composition/texte/paragraphes/encadrer_du_texte.1610898683.txt.gz · Dernière modification: 2021/01/17 16:51 par jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0