J'utilise LaTeX pour produire des documents identiques avec différentes mises en forme à partir d'un fichier de contenu commun que j'appelle dans chaque document.

Une de ces mises en forme utilise la classe report avec l'option twocolumn. J'aimerais que mes titres (jusqu'au niveau subsection inclus) apparaissent en pleine largeur de page et que le texte et les niveaux inférieurs ou égaux à subsubsection soient formatés en 2 colonnes.

Je sais le faire en jouant avec des balises \begin{multicols}{2} ... \end{multicols} mais je ne veux pas que ces balises apparaissent dans mon fichier de contenu car il est aussi utilisé par d'autres documents qui ne le présentent pas de la même manière. J'aimerais donc pouvoir faire ce réglage dans l'entête.

L'option multicol laisse par exemple le titre des chapitres en pleine largeur (mais insère un pagebreak que je ne voudrais pas voir apparaître partout).

Voyez-vous une solution à mon problème ?

Posée 23 Aoû '21, 14:54

MatQ07's gravatar image

MatQ07
15317
Taux d'acceptation : 100%

Modifiée 24 Aoû '21, 10:19

Pathe's gravatar image

Pathe ♦♦
7.4k28196245

@MatQ07 : bienvenue sur TeXnique !

Les formules de politesse et les signatures sont à éviter : celle(s) de votre contribution a (ont) été supprimée(s).

(24 Aoû '21, 10:20) Pathe ♦♦ Pathe's gravatar image

Voici une solution. Ce n'est pas ce que vous cherchez, mais à mon avis c'est plus simple et même plus naturel. Écrire votre document avec des balises multicols, ou autre environnement si vous voulez, puis annuler son fonctionnement là ou vous n'en avez pas besoin.

\documentclass[french]{report}
\usepackage{lmodern}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{multicol}
% commenter la ligne suivante pour  avoir les 2 colonnes
%\RenewDocumentEnvironment{multicols}{ m O{} O{} } { #2 }{}

\usepackage{mwe}

\begin{document}
\begin{multicols}{2}[\chapter{Le premier chapitre}]
\lipsum[1]
\end{multicols} 
\begin{multicols}{2}[\section{Une section}]
\lipsum[1-6]
\end{multicols} 
\begin{multicols}{2}[\section{Une section}]
\lipsum[1-6]
\end{multicols}
\end{document}
Lien permanent

Publiée 23 Aoû '21, 22:20

touhami's gravatar image

touhami
9.7k410
Taux d'acceptation : 51%

Modifiée 23 Aoû '21, 23:55

Bernard's gravatar image

Bernard
4.6k15

Votre réponse
(dés)activer l'aperçu

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Bases de Markdown

  • *italique* ou _italique_
  • **gras** ou __gras__
  • Lien ::[texte](http://url.com/ "Titre ")
  • Image : ?![alt texte](/path/img.jpg "Titre ")
  • Liste numérotée : 1. Foo 2. Bar
  • Pour ajouter un passage à la ligne, ajoutez deux espaces à l'endroit où vous souhaitez que la ligne commence.
  • Les balises HTML de base sont également prises en charge.