Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
2_composition:texte:paragraphes:encadrer_du_texte [2021/01/17 16:51]
jejust Correction "tcolobox" --> "tcolorbox". Exemple pour "fancybox".
2_composition:texte:paragraphes:encadrer_du_texte [2021/02/06 23:23] (Version actuelle)
jejust Ajout de deux exemples pour "tcolorbox". Réorganisation des sections.
Ligne 1: Ligne 1:
-====== Comment encadrer du texte? ======+====== Comment encadrer du texte ? ======
  
-===== La commande de base: '\fbox' ​=====+===== Avec la commande de base \fbox =====
  
-$\Reponse$  ​La commande ''​\fbox''​ met son argument dans une boîte (comme ''​\parbox''​) +La commande ''​\fbox''​ met son argument dans une boîte (comme ''​\parbox''​) puis dessine un cadre autour :
-puis dessine un cadre autour:+
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 15: Ligne 14:
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
-\usepackage[width=6cm,height=7cm]{geometry}+\usepackage[width=9cm,height=1cm]{geometry}
 \pagestyle{empty} \pagestyle{empty}
 \begin{document} \begin{document}
- 
 Je souhaite \fbox{encadrer} un mot dans un paragraphe. Je souhaite \fbox{encadrer} un mot dans un paragraphe.
- 
 \end{document} \end{document}
 </​latexdoc>​ </​latexdoc>​
 </​WRAP>​ </​WRAP>​
-<WRAP clear/>+<WRAP clear />
  
-Mais attention: tout le texte passé à la commande va se retrouver +Mais attention : tout le texte passé à la commande va se retrouver sur une seule ligne, sans coupure de mot possible !
-sur une seule ligne, sans coupure de mot possible!+
  
-Pour encadrer tout un paragraphe, une solution est de le placer +Pour encadrer tout un paragraphe, une solution est de le placer dans un environnement ''​minipage''​ :
-dans un environnement ''​minipage'':​+
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 45: Ligne 40:
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
-\usepackage[width=6cm,​height=7cm]{geometry}+\usepackage[width=9cm,​height=7cm]{geometry}
 \usepackage{microtype} \usepackage{microtype}
 \pagestyle{empty} \pagestyle{empty}
Ligne 62: Ligne 57:
 <WRAP clear/> <WRAP clear/>
  
-<​note>​ +La commande \fbox est soumise à quelques paramètres : par exemple, ​l'​épaisseur du trait et l'​espace entre le texte et le trait est défini respectivement par les longueurs ''​\fboxrule''​ et ''​\fnboxsep''​ :
-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: +
- +
-<WRAP clear/>+
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 73: Ligne 64:
 dans un paragraphe. dans un paragraphe.
  
-\setlength{\fboxrule}{2pt} +{% Cette paire d'​accolades permet 
-Je souhaite \fbox{encadrer} un mot + % que la modification n'​ait 
-dans un paragraphe.+ % qu'un effet local. 
 + \setlength{\fboxrule}{2pt} 
 + Je souhaite \fbox{encadrer} un mot 
 + dans un paragraphe. 
 +}
  
-\setlength{\fboxsep}{1.5ex} +{% 
-Je souhaite \fbox{encadrer} un mot + \setlength{\fboxsep}{1.5ex} 
-dans un paragraphe.+ Je souhaite \fbox{encadrer} un mot 
 + dans un paragraphe. 
 +}
 </​code>​ </​code>​
 </​WRAP>​ </​WRAP>​
Ligne 85: Ligne 82:
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
-\usepackage[width=6cm,​height=7cm]{geometry}+\usepackage[width=9cm,​height=7cm]{geometry}
 \pagestyle{empty} \pagestyle{empty}
 \begin{document} \begin{document}
Ligne 92: Ligne 89:
 dans un paragraphe. dans un paragraphe.
  
-\setlength{\fboxrule}{2pt} +{% Cette paire d'​accolades permet 
-Je souhaite \fbox{encadrer} un mot + % que la modification n'​ait 
-dans un paragraphe.+ % qu'un effet local. 
 + \setlength{\fboxrule}{2pt} 
 + Je souhaite \fbox{encadrer} un mot 
 + dans un paragraphe. 
 +}
  
-\setlength{\fboxsep}{1.5ex} +{% 
-Je souhaite \fbox{encadrer} un mot + \setlength{\fboxsep}{1.5ex} 
-dans un paragraphe.+ Je souhaite \fbox{encadrer} un mot 
 + dans un paragraphe. 
 +}
  
 \end{document} \end{document}
Ligne 104: Ligne 107:
 </​WRAP>​ </​WRAP>​
 <WRAP clear/> <WRAP clear/>
-</​note>​ 
  
 +===== Avec l'​environnement tabular =====
  
-$\Reponse$ ​ Une autre solution simple et efficace +Avoir du texte encadré revient ​à avoir un tableaau avec une unique ​cellule :
-consiste ​à définir ​un tableau d'une seule cellule:+
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 123: Ligne 125:
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
-\usepackage[width=6cm,​height=7cm]{geometry}+\usepackage[width=9cm,​height=7cm]{geometry}
 \pagestyle{empty} \pagestyle{empty}
 \begin{document} \begin{document}
Ligne 138: Ligne 140:
 <WRAP clear/> <WRAP clear/>
  
-===== Fonctionnalités avancées: présentation de quelques packages ​=====+===== Exemples avancés avec d'​autres extensions ​=====
  
-$\Reponse$ ​ Le package ​[[ctanpkg>​fancybox]] définit des commandes +Les méthodes ci-dessous fournissent des cadres d'​apparence très classique. 
-telles que ''​\shadowbox'',​ ''​\doublebox''​ et ''​\ovalbox'',​ +D'​autres extensions dessinent des cadres adaptés à des documents 
-qui fonctionnent de la même manière que ''​\fbox''​ ci-dessus:+au look plus moderne, avec couleurs et icônes. 
 + 
 +Certaines extensions permettent également d'​encadrer des pages entières,​ 
 +ou des blocs de texte s'​étendant sur plusieurs pages. 
 + 
 +==== L'​extension fancybox ==== 
 + 
 +L'​extension ​[[ctanpkg>​fancybox]] définit des commandes telles que ''​\shadowbox'',​ ''​\doublebox''​ et ''​\ovalbox'',​ qui fonctionnent de la même manière que ''​\fbox''​ ci-dessus :
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 157: Ligne 166:
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
-\usepackage[width=6cm,​height=7cm]{geometry}+\usepackage[width=9cm,​height=7cm]{geometry}
 \usepackage{fancybox} \usepackage{fancybox}
 \pagestyle{empty} \pagestyle{empty}
Ligne 170: Ligne 179:
 \ovalbox{Texte dans un cadre \ovalbox{Texte dans un cadre
   aux coins arrondis.}   aux coins arrondis.}
 +\end{document}
 +</​latexdoc>​
 +</​WRAP>​
 +<WRAP clear />
 +
 +==== L'​extension awesomebox ====
 +
 +L'​extension [[ctanpkg>​awesomebox]] ne dessine pas de cadres à proprement parler,
 +mais peut mettre en valeur un bloc de texte avec une icône et un filet coloré:
 +
 +<WRAP column 45ex>
 +<code latex>
 +\documentclass{article}
 +  \usepackage{awesomebox}
 +
 +\begin{document}
 +
 +\notebox{Notez bien ceci!}
 +\smallskip
 +
 +\importantbox{Lisez bien ce paragraphe
 +avant de passer à la suite de ce document
 +sinon, vous risquez de perdre votre temps
 +en considérations inutiles!}
 +\end{document}
 +</​code>​
 +</​WRAP>​
 +<WRAP column 30ex>
 +<​latexdoc>​
 +\documentclass{article}
 +  \usepackage[width=9cm,​height=7cm]{geometry}
 +  \usepackage{awesomebox}
 +  \pagestyle{empty}
 +
 +\begin{document}
 +
 +\notebox{Notez bien ceci!}
 +\smallskip
 +
 +\importantbox{Lisez bien ce paragraphe
 +avant de passer à la suite de ce document
 +sinon, vous risquez de perdre votre temps
 +en considérations inutiles!}
 +\smallskip
 +
 \end{document} \end{document}
 </​latexdoc>​ </​latexdoc>​
Ligne 175: Ligne 229:
 <WRAP clear/> <WRAP clear/>
  
-FIXME Détailler les packages ​[[ctanpkg>​tcolobox]] et [[ctanpkg>​bclogo]].+[[ctanpkg>​awesomebox|Awesomebox]] a cinq dessins de base, 
 +utilisables sous forme d'une commande ou d'un environnement:​
  
-$\Reponse$ ​ Le package [[ctanpkg>boxedminipage]] est un vieux style <latex>\LaTeX</latex2.09 +^ Pour... ​  ^ Commande ​ ^ Environnement ​ ^ Exemple ​ ^ 
-qui a été actualisé.+| Une note  | ''​\notebox''​ | ''​\begin{noteblock}''​...''​\end{noteblock}'' ​ | <​latexdoc>​\documentclass[6pt]{extarticle}\usepackage{awesomebox}\pagestyle{empty}\begin{document}\notebox{Marcel se couche de bonne heure.}\end{document}</​latexdoc | 
 +| Une suggestion ​ | ''​\tipbox''​ | ''​\begin{tipblock}''​...''​\end{tipblock}'' ​ | <​latexdoc>​\documentclass[6pt]{extarticle}\usepackage{awesomebox}\pagestyle{empty}\begin{document}\tipbox{Marcel se couche de bonne heure.}\end{document}</latexdoc | 
 +| Un avertissement ​ | ''​\warningbox''​ | ''​\begin{warningblock}''​...''​\end{warningblock}'' ​ | <​latexdoc>​\documentclass[6pt]{extarticle}\usepackage{awesomebox}\pagestyle{empty}\begin{document}\warningbox{Marcel se couche de bonne heure.}\end{document}</latexdoc | 
 +| Une mise en garde  | ''​\cautionbox''​ | ''​\begin{cautionblock}''​...''​\end{cautionblock}'' ​ | <​latexdoc>​\documentclass[6pt]{extarticle}\usepackage{awesomebox}\pagestyle{empty}\begin{document}\cautionbox{Marcel se couche de bonne heure.}\end{document}</​latexdoc> ​ | 
 +| Une remarque importante ​ | ''​\importantbox''​ | ''​\begin{importantblock}''​...''​\end{importantblock}'' ​ | <​latexdoc>​\documentclass[6pt]{extarticle}\usepackage{awesomebox}\pagestyle{empty}\begin{document}\importantbox{Marcel se couche de bonne heure.}\end{document}</​latexdoc> ​ |
  
-$\Reponse$ ​ Le package ​[[ctanpkg>​niceframe]] permet de définir ​des cadres pleine page.+<note tip> 
 +Il est également très facile de définir vos propres boîtes avec la commande 
 +''​\awesomebox''​. Les icônes peuvent être choisies parmi celles de l'​extension 
 +[[ctanpkg>​fontawesome5]], et vous pouvez mettre ​des filets horizontaux avant 
 +et/ou après votre bloc de texte: 
 +<WRAP clear />
  
-$\Reponse$ ​ Pour encadrer un texte pouvant s'​étendre sur plusieurs pages, on +<code latex> 
-peut utiliser l'​environnement ''​breakbox''​ du package [[ctanpkg>​boites]].+\documentclass{article} 
 +  ​\usepackage{awesomebox}
  
-Le package [[ctanpkg>​boitesexemples]] définit les environnements ''​boiteepaisseavecuntitre'',​ +\begin{document}
-''​boitenumeroteeavecunedoublebarre'',​ ''​boiteavecunelignequiondulesurlecote''​ et +
-''​boitecoloriee''​ qui proposent différentes méthodes d'​encadrement.+
  
-  * ''​bkcounttrue''​ les lignes sont numérotées ; +\awesomebox[white][\abShortLine]{0pt}{\faGrinBeam[regular]}{pink}{Ceci va vous rendre heureux\dots}
-  * ''​bkcountfalse''​ elles ne le sont pas (défaut).+
  
-On peut emboîter ces environnements.+\end{document} 
 +</​code>​ 
 +</​note>​
  
  
-===== Pour les bricoleurs: définir un nouvel environnement =====+==== L'​extension tcolorbox ​====
  
-Les packages présentés ​ci-dessus sont évidemment bien plus plus puissants, +L'​extension [[ctanpkg>​tcolorbox]] utilise [[ctanpkg>​tikz|TikZ/​PGF]] 
-mais à titre pédagogique,​ voici comment on pourrait écrire soi-même +pour dessiner ses cadres. 
-un environnement pour encadrer des paragraphes de texte:+Si vous avez l'​habitude de Ti//k//Z, vous apprécierez la syntaxe clefs-valeurs 
 +qui permet de paramétrer finement l'​apparence des cadres (couleurs, formes, 
 +structures...). 
 + 
 +À cause de ses possibilités de configuration immenses, [[texdoc>​tcolorbox|sa documentation]] 
 +fait plus de 500 pages (en anglais). 
 +Mais les deux exemples ci-dessous montrent qu'il n'est vraiment pas compliqué 
 +de dessiner des cadres déjà adaptés à pas mal de circonstances,​ 
 +et les nombreuses illustrations de la documentation devraient vous aider à aller plus loin: 
 + 
 +<WRAP column 50ex> 
 +<code latex> 
 +\documentclass{article} 
 +  \usepackage{tcolorbox} 
 + 
 +\begin{document} 
 + 
 +\begin{tcolorbox} 
 +Le cadre par défaut 
 +\end{tcolorbox} 
 +\smallskip 
 + 
 +\begin{tcolorbox}[colback=red!5!white,​ 
 +                  colframe=red!75!black,​ 
 +                  title=Cadre sexy 
 +                 ] 
 +Un autre cadre \textbf{plus coloré}, séparé 
 +en deux parties, et portant un titre. 
 +\tcblower 
 +Demain, \textit{j'​enlève le bas}. 
 +\end{tcolorbox} 
 + 
 +\end{document} 
 +</​code>​ 
 +</​WRAP>​ 
 +<WRAP column 40ex> 
 +<​latexdoc>​ 
 +\documentclass{article} 
 +  \usepackage[width=6cm,​height=6cm]{geometry} 
 +  \usepackage{microtype} 
 +  \usepackage[french]{babel} 
 +  \usepackage{tcolorbox} 
 +  \pagestyle{empty} 
 + 
 +\begin{document} 
 + 
 +\begin{tcolorbox} 
 +Le cadre par défaut 
 +\end{tcolorbox} 
 +\smallskip 
 + 
 +\begin{tcolorbox}[colback=red!5!white,​ 
 +                  colframe=red!75!black,​ 
 +                  title=Cadre sexy 
 +                 ] 
 +Un autre cadre \textbf{plus coloré}, séparé 
 +en deux parties, et portant un titre. 
 +\tcblower 
 +Demain, \textit{j'​enlève le bas}. 
 +\end{tcolorbox} 
 + 
 +\end{document} 
 +</​latexdoc>​ 
 +</​WRAP>​ 
 +<WRAP clear /> 
 + 
 + 
 +==== L'​extension boites ==== 
 + 
 +Pour encadrer un texte pouvant s'​étendre sur plusieurs pages, on peut utiliser l'​environnement ''​breakbox''​ 
 +de l'​extension [[ctanpkg>​boites]]. Cette extension définit également, par le biais du fichier 
 +''​boites_exemples.sty''​ (à charger car [[ctanpkg>​boites]] ne le précharge pas), 
 +des environnements qui proposent différentes méthodes d'​encadrement : 
 +  * ''​boiteepaisseavecuntitre''​ ; 
 +  * ''​boitenumeroteeavecunedoublebarre''​ ; 
 +  * ''​boiteavecunelignequiondulesurlecote''​ ; 
 +  * et ''​boitecoloriee''​. 
 + 
 +Ces environnements peuvent tous être modifiés par deux commandes ​  : 
 +  * ''​bkcounttrue''​ qui numérote les lignes de ces boîtes ; 
 +  * ''​bkcountfalse''​ qui ne les numérote plus (option par défaut). 
 + 
 +Il est également possible d'​emboîter ces environnements. 
 + 
 + 
 + 
 +==== L'​extension niceframe ==== 
 + 
 +L'​extension [[ctanpkg>​niceframe]] permet de définir des cadres pleine page. 
 + 
 +FIXME Détailler [[ctanpkg>​nieframe]]. 
 + 
 +==== L'​extension boxedminipage ==== 
 + 
 +L'​extension [[ctanpkg>​boxedminipage]] correspond à un vieux style <​latex>​\LaTeX</​latex>​ 2.09 qui a été actualisé. 
 + 
 +FIXME Détailler [[ctanpkg>​boxedminipage]]. 
 + 
 +==== L'​extension bclogo ==== 
 + 
 +FIXME Détailler [[ctanpkg>​bclogo]]. 
 + 
 + 
 +===== Avec des environnements « faits maison » ===== 
 + 
 +Les extensions présentées ​ci-dessus sont évidemment bien plus plus puissantes 
 +maisà titre pédagogique,​ voici un exemple d'environnement ​« fait main » 
 +pour encadrer des paragraphes de texte :
  
 <file latex fmpage.sty>​ <file latex fmpage.sty>​
Ligne 208: Ligne 379:
 </​file>​ </​file>​
  
- +Et voici un exemple d'​utilisation ​de ce fichier ​:
-Utilisation ​de l'​environnement défini par ''​fmpage.sty''​:+
  
 <WRAP column 40ex> <WRAP column 40ex>
Ligne 222: Ligne 392:
 </​code>​ </​code>​
 </​WRAP>​ </​WRAP>​
-<WRAP column ​30ex>+<WRAP column ​30x>
 <​latexdoc>​ <​latexdoc>​
 \documentclass{article} \documentclass{article}
Ligne 245: Ligne 415:
 </​WRAP>​ </​WRAP>​
 <WRAP clear/> <WRAP clear/>
- 
  
 {{htmlmetatags>​metatag-keywords=(LaTeX,​entourer du texte,​mettre un cadre,​dessiner un cadre,​dessiner des filets) {{htmlmetatags>​metatag-keywords=(LaTeX,​entourer du texte,​mettre un cadre,​dessiner un cadre,​dessiner des filets)
-metatag-og:​title=(Comment encadrer du texte?)+metatag-og:​title=(Comment encadrer du texte)
 metatag-og:​site_name=(FAQ LaTeX francophone) metatag-og:​site_name=(FAQ LaTeX francophone)
 }} }}
- 
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