Différences

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

Lien vers cette vue comparative

Prochaine révision
Révision précédente
generalites:erreurs:n:not_in_outer_par_mode [2017/10/22 19:16] – créée nikopol2_programmation:erreurs:n:not_in_outer_par_mode [2021/04/10 17:08] (Version actuelle) – Fusion avec "2_programmation/erreurs/not_in_outer_par_mode". jejust
Ligne 1: Ligne 1:
-====== Que veut dire l'erreur: ''Not in outer par mode'' ? ======+====== Que signifie l'erreur: « Not in outer par mode »? ======
  
-<a name="Not-in-outer-par-mode" href="#Not-in-outer-par-mode" title="Not in outer par mode" class="AQuestionFAQ">Not in outer par mode</a>+  * **Message**: ''Not in outer par mode'' 
 +  * **Origine**: //LaTeX//
 + 
 +On obtient cette erreur lorsqu'un environnement ''\marginpar'' ou un environnement de flottant, 
 +tel que ''table'' ou ''figure'', se trouve à l'intérieur d'une commande ou d'un environnement 
 +produisant une boîte. Par exemple, on ne peut pas utiliser un ''\marginpar'' dans une note de bas de page, 
 +un flottant, un ''tabular'', ou tout autre emplacement analogue (puisqu'ils produisent tous des boîtes). 
 +On doit déplacer l'objet fautif dans le texte principal. 
 + 
 +===== Plus précisément ===== 
 + 
 +Vous avez le message d'erreur: 
 +<code> 
 +*\mbox{\marginpar{foo}} 
 + 
 +! LaTeX Error: Not in outer par mode
 +</code> 
 +Ce problème survient lorsque vous essayez mettre un élément mobile à l'intérieur 
 +d'une boîte. Les éléments mobiles, dans ce contexte, sont les environnements de flottants 
 +(''figure'' ou ''table'', par exemple) et les commandes ''\marginpar'' (notes marginales). 
 +LaTeX ne dispose tout simplement pas des mécanismes permettant à un flottant de flotter hors d'une boîte. 
 +En fait, les environnements de flottants et les ''\marginpar'' sont eux-mêmes définis à partir de boîtes, 
 +de sorte qu'ils ne peuvent pas être imbriqués. 
 + 
 +Si votre erreur provient de ''\marginpar'', cherchez simplement un autre moyen 
 +de placer la commande; il n'pas de solution générale, mais on arrive 
 +à se débrouiller au cas par cas. 
 + 
 +Si un environnement de flottant est le coupable, il est sans doute possible 
 +d'utiliser l'option de placement ''H'', fournie (par exemple) par le paquetage [[ctanpkg>float]]: 
 +<code latex> 
 +\parbox{14cm}{% 
 +  \begin{figure}[H] 
 +  ... 
 +  \caption{Apparemment flottant...} 
 +  \end{figure}% 
 +
 +</code> 
 + 
 +Cet exemple n'a pas beaucoup de sens en l'état ; cependant, 
 +il est concevable de trouver des utilisations réelles (par exemple, 
 +en utilisant un paquetage tel que [[ctanpkg>algorithm2e]] pour placer 
 +deux algorithmes côte à côte). 
 + 
 +Un autre cas fréquent est celui où l'utilisateur veut insérer une figure quelque part 
 +dans un tableau:  
 +<code latex> 
 +\begin{tabular}{|l|} 
 +  \hline 
 +  \begin{figure} 
 +  \includegraphics{mon_image} 
 +  \end{figure} 
 +  \hline 
 +\end{tabular} 
 +</code> 
 +une construction qui était censée dessiner un cadre autour de l'image, 
 +mais qui ne fonctionne pas. Pas plus que ça, d'ailleurs: 
 +<code latex> 
 +\framebox{\begin{figure} 
 +  \includegraphics{foo} 
 +  \end{figure}% 
 +
 +</code> 
 + 
 +Le problème est que l'environnement ''tabular'' et la commande ''\framebox'' empêchent 
 +l'environnement ''figure'' de jouer son rôle normal, qui est de flotter dans le document. 
 + 
 +La solution consiste simplement à ne pas utiliser l'environnement ''figure'' ici :  
 +<code latex> 
 +\begin{tabular}{|l|} 
 +  \hline 
 +  \includegraphics{mon_image} 
 +  \hline 
 +\end{tabular} 
 +</code> 
 + 
 +À quoi servait l'environnemnt de flottant? Tel qu'il était utilisé 
 +dans les deux premiers exemples, il ne servait à rien. 
 +Mais peut-être vouliez-vous en fait encadrer l'image et sa légende, dans un flottant? 
 + 
 +Il est facile d'y parvenir, il suffit d'inverser l'ordre des environnements 
 +(ou de l'environnement ''figure'' et de la commande) :  
 +<code latex> 
 +\begin{figure} 
 +  \begin{tabular}{|l|} 
 +    \hline 
 +    \includegraphics{mon_image} 
 +    \caption{Une image} 
 +    \hline 
 +  \end{tabular} 
 +\end{figure} 
 +</code> 
 + 
 +Il en va de même pour les environnements ''table'' (ou tout autre environnement que vous auriez défini vous-même) 
 +à l'intérieur des commandes de tableaux ou de boîtes; vous devez //faire sortir l'environnement de flottant// de ces commades, 
 +d'une façon ou d'une autre.
  
-<div class="DivQuestionContenuFAQ"><p>On obtient cette erreur lorsqu'un environnement <span style="font-family: monospace; padding: 2px; background: #eee">\marginpar</span> ou un environnement flottant, tel que table ou figure, se trouve à l'intérieur d'une commande ou d'un environnement produisant une boîte. Par exemple, on ne peut pas utiliser un <span style="font-family: monospace; padding: 2px; background: #eee">\marginpar</span> dans une note de bas de page, un flottant, un <i>tabular</i>, ou tout autre emplacement analogue (puisqu'ils produisent tous des boîtes). On doit déplacer l'objet fautif dans le texte principal.</p></div> 
  
 ----- -----
-//Source:// https://latex.developpez.com/faq/erreurs?page=N+//Sources:// 
 +  * [[https://latex.developpez.com/faq/erreurs?page=N]], 
 +  * [[https://www.latex-project.org/help/books/#french|LaTeX Companion, 2e édition]], Frank Mittelbach, Michel Goossens, Johannes Braams, David Carlisle, Chris Rowley (Pearson, 2006) ; ISBN: 978-2-7440-7182-9. Annexe B, //Détecter et résoudre les problèmes//, reproduite avec l'aimable autorisation de l'éditeur, 
 +  * [[faquk>FAQ-parmoderr|Not in outer par mode]], 
 +  * [[https://tex.stackexchange.com/questions/124346/latex-error-not-in-outer-par-mode|LaTeX Error: Not in outer par mode]].
  
 +{{htmlmetatags>metatag-keywords=(messages d'erreur de LaTeX,note marginale,flottant dans une note)
 +metatag-og:title=(Que signifie l'erreur: Not in outer par mode ?)
 +metatag-og:site_name=(FAQ LaTeX francophone)
 +}}
  
2_programmation/erreurs/n/not_in_outer_par_mode.1508699802.txt.gz · Dernière modification : 2017/10/22 19:16 de nikopol
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0