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:lignes:texte_souligne_qui_depasse_dans_la_marge [2018/05/24 08:38] joseph.wright3_composition:texte:lignes:texte_souligne_qui_depasse_dans_la_marge [2022/10/04 12:59] (Version actuelle) – Recours à ⟨ et ⟩ dbitouze
Ligne 1: Ligne 1:
---- +====== Comment obtenir un soulignement de plusieurs lignes de texte? ======
-section: Things are Going Wrong… +
-subsection: Making things stay where you want them +
-date: 2014-06-10 +
----+
  
-# Underlined text won't break+<latex>\LaTeX</latex> n'a pas été pensé pour gérer par défaut le soulignement du texte. En effet, la mise en valeur de texte devrait typographiquement se faire plutôt par l'usage de l'italique. Toutefois, une solution a été trouvée par certains pour compenser cette absence de prise en charge : utiliser la commande mathématique ''\underline''. Cette technique a cependant un gros défaut : le texte sera positionné dans une boîte, sans césure possible, et débordera dans la marge. Qui plus est, la position du souligné n'est pas constante, selon que des lettres descendantes sont soulignées ou pas. Voici un exemple :
  
-Knuth made no provision for underlining text: he took the view that +<WRAP column 60ex> 
-underlining is not a typesetting operation, but rather one that +<code latex> 
-provides emphasis on typewriters, which typically offer but one +\documentclass{article}
-typeface.  The corresponding technique in typeset text is to switch +
-from upright to italic text (or vice-versa): the LaTeX command +
-`\emph` does just that to its argument.+
  
-Nevertheless, typographically illiterate people (such as those that +\begin{document} 
-specify double-spaced +Je dois vous le dire : votre comportement 
-[thesis styles](FAQ-linespace.md)) +typographique \underline{parfaitement inconvenant} 
-continue to require underlining of us, so LaTeX as distributed +surpris ! Nombreux sont ceux qui se sont même 
-defines an `\underline` command that applies the mathematical +dit scandalisés par ce soulignement qui dépasse 
-''underbar'' operation to text.  This technique is not entirely +les bornes. 
-satisfactory, however: the text gets stuck into box, and won't break +\end{document} 
-at line end.+</code> 
 +</WRAP>
  
-Two packages are available that solve this problem.  The +<WRAP column 60ex> 
-[`ulem`](https://ctan.org/pkg/ulem) package redefines the +<latexdoc> 
-`\emph` command to underline its argument; the underlined text thus +\documentclass{article} 
-produced behaves as ordinary emphasised text, and will break over the +\pagestyle{empty} 
-end of line.  (The package is capable of other peculiar effects, +\begin{document} 
-too: read its documentation.) +Je dois vous le dire : votre comportement typographique \underline{parfaitement 
-The [`soul`](https://ctan.org/pkg/soul) package defines an `\ul` command (after which the +inconvenant} surpris ! Nombreux sont ceux qui se sont même dit scandalisés 
-package is, in part, named) that underlines running text.+par ce soulignement qui dépasse les bornes
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear />
  
-Beware of [`ulem`](https://ctan.org/pkg/ulem)'s default behaviour, which is to convert the +Plusieurs extensions permettent de corriger ce point. 
-`\emph` command into an underlining commandthis can be avoided by + 
-loading the package with+===== Avec l'extension “ulem” ===== 
-```latex+ 
 +L'extension [[ctanpkg>ulem|ulem]] définit la commande ''\uline'' pour souligner son argument ; le texte souligné ainsi produit se comporte comme un texte accentué ordinaire, et se coupera à la fin d'une ligne. Notez bien que la césure peut parfois ne pas fonctionner. Dans l'exemple ci-dessous, elle est indiquée car, sans cela, le mot « inconvenant » n'aurait pas été coupé. 
 + 
 +<WRAP column 60ex> 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage{ulem} 
 + 
 +\begin{document} 
 +Je dois vous le dire votre comportement 
 +typographique \uline{parfaitement in\-convenant} a 
 +surpris ! Nombreux sont ceux qui se sont même dit 
 +scandalisés par ce soulignement qui dépasse les 
 +bornes. 
 +\end{document} 
 +</code> 
 +</WRAP> 
 + 
 +<WRAP column 60ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +\usepackage{ulem} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Je dois vous le dire : votre comportement typographique \emph{parfaitement 
 +in\-convenant} a surpris ! Nombreux sont ceux qui se sont même dit scandalisés 
 +par ce soulignement qui dépasse les bornes. 
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +Notez ici un point : par défaut, l'extension [[ctanpkg>ulem|ulem]] convertit la commande ''\emph'' en commande de soulignement comme ''\uline'' cela peut être évité en chargeant l'extension avec 
 + 
 +<code latex>
 \usepackage[normalem]{ulem} \usepackage[normalem]{ulem}
-```+</code> 
 + 
 +Par ailleurs, les commandes ''\normalem'' et ''\ULforem'' permettent de passer du mode ''\emph'' classique au mode ''\emph'' souligné. En mode souligné, la commande devient paramétrable pour changer le style du souligné ou biffer des mots. 
 + 
 +<WRAP column 60ex> 
 +<code latex> 
 +\documentclass{article} 
 +\uspackage[french]{babel} 
 +\usepackage{ulem} 
 + 
 +\begin{document} 
 +\normalem Voici le mode \emph{emphasize} usuel. 
 +\ULforem Voici le mode \emph{emphasize} souligné. 
 + 
 +D'autres possibilités existent : 
 +\begin{itemize} 
 +   \item vagues : \uwave{texte} ; 
 +   \item barré : \sout{texte} ; 
 +   \item rayé : \xout{texte}. 
 +\end{itemize} 
 +\end{document} 
 +</code> 
 +</WRAP> 
 + 
 +<WRAP column 60ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +\usepackage[french]{babel} 
 +\usepackage{ulem} 
 +\pagestyle{empty} 
 +\begin{document} 
 +\normalem Voici le mode \emph{emphasize} usuel. 
 +\ULforem Voici le mode \emph{emphasize} souligné. 
 + 
 +D'autres possibilités existent : 
 +\begin{itemize} 
 +   \item vagues : \uwave{texte} ; 
 +   \item barré : \sout{texte} ; 
 +   \item rayé : \xout{texte}. 
 +\end{itemize} 
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +===== Avec l'extension “soul” ===== 
 + 
 +L'extension [[ctanpkg>soul|soul]] fournit la macro ''\ul''. Ici, l'anomalie de césure n'est pas ici présente. 
 + 
 +<WRAP column 60ex> 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage{soul} 
 + 
 +\begin{document} 
 +Je dois vous le dire : votre comportement 
 +typographique \ul{parfaitement inconvenant} a 
 +surpris ! Nombreux sont ceux qui se sont même dit 
 +scandalisés par ce soulignement qui dépasse les 
 +bornes. 
 +\end{document} 
 +</code> 
 +</WRAP> 
 + 
 +<WRAP column 60ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +\usepackage{soul} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Je dois vous le dire : votre comportement 
 +typographique \ul{parfaitement inconvenant} a 
 +surpris ! Nombreux sont ceux qui se sont même dit 
 +scandalisés par ce soulignement qui dépasse les 
 +bornes. 
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +Si l'extension [[ctanpkg>xcolor]] est chargée, on peut modifier la couleur du trait par ''\setulcolor{⟨nom d'une couleur⟩}''. Bien entendu, la couleur ne sera, en général, //pas// visible avec un visualiseur de DVI mais elle sera bien dans le PS ou PDF produit. On peut régler d'autres aspects du soulignement à l'aide de ''\setul{⟨profondeur⟩}{⟨épaisseur du trait⟩}''. La documentation de [[ctanpkg>soul|soul]] fournit de nombreux exemples dont s'inspire celui-ci : 
 + 
 +<WRAP column 60ex> 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage[latin1]{inputenc} 
 +\usepackage[T1]{fontenc} 
 +\usepackage{color,soul} 
 +\usepackage[frenchb]{babel} 
 +\definecolor{darkblue}{rgb}{0,0,0.5} 
 +\setulcolor{darkblue} 
 +\definecolor{bleuclair}{rgb}{.90,.95,1} 
 +\sethlcolor{bleuclair} 
 + 
 +\begin{document} 
 +Pour le bal des horreurs, voici venir : 
 +\begin{itemize} 
 +\item \ul{des soulignements ;}% 
 +\setuldepth{a}% 
 +\item \ul{des soulignements ;}% 
 +\setuldepth{g}% 
 +\item \ul{des soulignements ;} 
 +\item \setul{}{.75ex} 
 +\ul{des soulignements \emph{un peu trop épais ;}} 
 +\item \setul{1.2ex}{.05ex} 
 +\ul{des soulignements \emph{un peu trop bas.}} \\ 
 +\end{itemize} 
 + 
 +On peut également surligner \hl{en bleu clair.} \\ 
 + 
 +On dispose aussi de petites capitales espacées : 
 +\begin{itemize} 
 +\item \textsc{Un exemple assez long} ; 
 +\item \caps{Un exemple assez long}. 
 +\end{itemize} 
 +\end{document} 
 +</code> 
 +</WRAP> 
 + 
 +<WRAP column 60ex> 
 +<latexdoc> 
 +\documentclass{article} 
 +\usepackage[latin1]{inputenc} 
 +\usepackage[T1]{fontenc} 
 +\usepackage{color,soul} 
 +\usepackage[frenchb]{babel} 
 +\definecolor{darkblue}{rgb}{0,0,0.5} 
 +\setulcolor{darkblue} 
 +\definecolor{bleuclair}{rgb}{.90,.95,1} 
 +\sethlcolor{bleuclair} 
 +\pagestyle{empty} 
 +\begin{document} 
 +Pour le bal des horreurs, voici venir : 
 +\begin{itemize} 
 +\item \ul{des soulignements ;}% 
 +\setuldepth{a}% 
 +\item \ul{des soulignements ;}% 
 +\setuldepth{g}% 
 +\item \ul{des soulignements ;} 
 +\item \setul{}{.75ex} 
 +\ul{des soulignements \emph{un peu trop épais ;}} 
 +\item \setul{1.2ex}{.05ex} 
 +\ul{des soulignements \emph{un peu trop bas.}} \\ 
 +\end{itemize} 
 + 
 +On peut également surligner \hl{en bleu clair.} \\ 
 + 
 +On dispose aussi de petites capitales espacées : 
 +\begin{itemize} 
 +\item \textsc{Un exemple assez long} ; 
 +\item \caps{Un exemple assez long}. 
 +\end{itemize} 
 +\end{document} 
 +</latexdoc> 
 +</WRAP> 
 +<WRAP clear /> 
 + 
 +FIXME Des problèmes entre [[ctanpkg>xcolor|xcolor]] et [[ctanpkg>soul|soul]] ont été mentionnés. 
 + 
 + 
 +===== Avec l'extension “Lua-UL” ===== 
 + 
 +L'extension [[ctanpkg>lua-ul|Lua-UL]], de Marcel Krüger, met à profit 
 +les nouvelles possibilités du moteur LuaTeX pour fournir des soulignement, 
 +biffage, mise en évidence, etc., qui n'empêchent pas les ligatures, le crénage 
 +des caractères ou la césure. 
 + 
 +Les commandes principales sont: 
 +  * ''\underLine'' pour le soulignement, 
 +  * ''\highLight'' pour la mise en évidence (ne fonctionne que si [[ctanpkg>luacolor]] est chargé), 
 +  * ''\strikeThrough'' pour biffer. 
 + 
 +Par exemple: 
 + 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage{lua-ul} 
 + 
 +\begin{document} 
 +Cette extension est \strikeThrough{inutile}\underLine{géniale}! 
 +\end{document} 
 +</code> 
 + 
 +FIXME Compiler le code de cet exemple quand le serveur aura le package [[ctanpkg>lua-ul|Lua-UL]]. 
 + 
 +Cette extension permet une très grande personnalisation des signes de biffure et de soulignement 
 +(on peut même souligner avec de petits dessins). 
 + 
 +Elle propose un mode de compatibilité avec [[ctanpkg>soul]]: si la chargez 
 +avec l'option ''soul'', vous pourrez utiliser les commandes ''\ul'' et ''\ul''
 + 
 +<code latex> 
 +\documentclass{article} 
 +\usepackage[soul]{lua-ul} 
 + 
 +\begin{document} 
 +Cette extension est \st{inutile}\ul{géniale}! 
 +\end{document} 
 +</code> 
  
 +-----
 +//Source :// [[faquk>FAQ-underline|Underlined text won't break]]
  
 +{{htmlmetatags>metatag-keywords=(LaTeX,soulignement,barrer du texte,souligner du texte,mettre du texte sur fond coloré)
 +metatag-og:title=(Comment obtenir un soulignement de plusieurs lignes de texte)
 +metatag-og:site_name=(FAQ LaTeX francophone)
 +}}
3_composition/texte/lignes/texte_souligne_qui_depasse_dans_la_marge.1527151107.txt.gz · Dernière modification : 2018/05/24 08:38 de joseph.wright
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0