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édentesRévision précédente
Prochaine révision
Révision précédente
composition:texte:paragraphes:encadrer_du_texte [2021/01/17 15:35] – Compilation de l'exemple "fmpage.sty". jejust3_composition:texte:paragraphes:encadrer_du_texte [2022/06/30 19:22] (Version actuelle) – [L'extension awesomebox] dbitouze
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/>
  
 +===== Exemples avancés avec d'autres extensions =====
  
 +Les méthodes ci-dessous fournissent des cadres d'apparence très classique.
 +D'autres extensions dessinent des cadres adaptés à des documents
 +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.
  
-FIXME Détailler les packages [[ctanpkg>tcolobox]] et [[ctanpkg>bclogo]]. +==== L'extension fancybox ====
- +
-$\Reponse$  Il existe également le package [[ctanpkg>fancybox]] qui définit +
-des fonctions telles que ''\shadowbox'', ''\doublebox'', ''\ovalbox'', etc.+
  
 +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>
 <code latex> <code latex>
 +\usepackage{fancybox}
 +
 \shadowbox{Texte ombré.} \shadowbox{Texte ombré.}
 \doublebox{Texte doublement encadré.} \doublebox{Texte doublement encadré.}
Ligne 153: Ligne 162:
   aux coins arrondis.}   aux coins arrondis.}
 </code> </code>
 +</WRAP>
 +<WRAP column 30ex>
 +<latexdoc>
 +\documentclass{article}
 +\usepackage[width=9cm,height=7cm]{geometry}
 +\usepackage{fancybox}
 +\pagestyle{empty}
 +\begin{document}
  
-$\Reponse$  Le package [[ctanpkg>boxedminipage]] est un vieux style <latex>\LaTeX</latex> 2.09 +\shadowbox{Texte ombré.} 
-qui a été actualisé.+\smallskip
  
-$\Reponse$  Le package [[ctanpkg>niceframe]] permet de définir des cadres pleine page.+\doublebox{Texte doublement encadré.
 +\smallskip
  
-$\Reponse$  Pour encadrer un texte pouvant s'étendre sur plusieurs pages, on +\ovalbox{Texte dans un cadre 
-peut utiliser l'environnement ''breakbox'' du package [[ctanpkg>boites]].+  aux coins arrondis.
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear />
  
-Le package [[ctanpkg>boitesexemples]] définit les environnements ''boiteepaisseavecuntitre'', +==== L'extension awesomebox ====
-''boitenumeroteeavecunedoublebarre'', ''boiteavecunelignequiondulesurlecote'' et +
-''boitecoloriee'' qui proposent différentes méthodes d'encadrement.+
  
-  * ''bkcounttrue'' les lignes sont numérotées ; +L'extension [[ctanpkg>awesomebox]] ne dessine pas de cadres à proprement parler, 
-  * ''bkcountfalse'' elles ne le sont pas (défaut).+mais peut mettre en valeur un bloc de texte avec une icône et un filet coloré:
  
-On peut emboîter ces environnements.+<WRAP column 45ex> 
 +<code latex> 
 +\documentclass{article} 
 +  \usepackage{awesomebox}
  
 +\begin{document}
  
-===== Pour les bricoleurs: définir un nouvel environnement =====+\notebox{Notez bien ceci !} 
 +\smallskip
  
-Les packages présentés ci-dessus sont évidemment bien plus plus puissants, +\importantbox{Lisez bien ce paragraphe 
-mais à titre pédagogique, voici comment on pourrait écrire soi-même +avant de passer à la suite de ce document 
-un environnement pour encadrer des paragraphes de texte:+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} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear/> 
 + 
 +[[ctanpkg>awesomebox|Awesomebox]] a cinq dessins de base, 
 +utilisables sous forme d'une commande ou d'un environnement: 
 + 
 +^ Pour...   ^ Commande  ^ Environnement  ^ Exemple 
 +| 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> 
 + 
 +<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 /> 
 + 
 +<code latex> 
 +\documentclass{article} 
 +  \usepackage{awesomebox} 
 + 
 +\begin{document} 
 + 
 +\awesomebox[white][\abShortLine]{0pt}{\faGrinBeam[regular]}{pink}{Ceci va vous rendre heureux\dots} 
 + 
 +\end{document} 
 +</code> 
 +</note> 
 + 
 + 
 +==== L'extension tcolorbox ==== 
 + 
 +L'extension [[ctanpkg>tcolorbox]] utilise [[ctanpkg>tikz|TikZ/PGF]] 
 +pour dessiner ses cadres. 
 +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 185: 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 199: Ligne 392:
 </code> </code>
 </WRAP> </WRAP>
-<WRAP column 30ex>+<WRAP column 30x>
 <latexdoc> <latexdoc>
 \documentclass{article} \documentclass{article}
Ligne 222: 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)
 }} }}
  
3_composition/texte/paragraphes/encadrer_du_texte.1610897712.txt.gz · Dernière modification : 2021/01/17 15:35 de jejust
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0