[Résolu] Titre de chapitre encadré (titlesec)

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Titre de chapitre encadré (titlesec)

Messagepar sarmin » Lundi 15 Août 2011, 17:15

Bonjours :)

Ayant récemment découvert plus en profondeur titlesec, j'ai quand même besoin de votre aide, la doc ne m'ayant pas vraiment aidé
Je désire donc encadrer mes titre de \chapter avec le label en haut à gauche comme sur l'ECM suivant, en utilisant \titleformat et frame :

Code: Tout sélectionner
\documentclass{report}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}

\usepackage{titlesec}
\usepackage{lipsum}

%% Tronches des chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\sffamily\Huge\bfseries\filcenter}
%%%%%%%%%%%%%%%%%%%%

\begin{document}

\chapter{Un exemple de titre assez long}
\lipsum[1]
\chapter{Court titre}
\lipsum[1]

\end{document}


Mais je trouve que, avec 8 pt, il y a trop peu d'espace au dessus du premier titre (entre le titre lui même et la ligne) et trop en bas... problème : l'argument de distance (le "8pt") s'applique aux deux côtés... j'ai essayé avec des \vspace négatifs et positif, mais ca ne fonctionne pas.

Une idée ?

Merci d'avance !
Dernière édition par sarmin le Mercredi 17 Août 2011, 21:58, édité 1 fois.
sarmin
Kilo-utilisateur
 
Messages: 153
Inscription: Mercredi 17 Mars 2010, 14:43
Localisation: Bruxelles, Belgique
Statut actuel: Post-bac | Ecole d'ingénieur

Publicité

Re: Titre de chapitre encadré (titlesec)

Messagepar Clembou » Lundi 15 Août 2011, 19:56

Bonsoir,

Pour régler l'espace après le titre, on peut utiliser la commande \titlespacing*. Dans ton ECM, cela donne :

Code: Tout sélectionner
\documentclass{report}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}

\usepackage{titlesec}
\usepackage{lipsum}

%% Tronches des chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\sffamily\Huge\bfseries\filcenter}

\titlespacing*{\chapter}{0pt}{0pt}{3cm}
%%%%%%%%%%%%%%%%%%%%



\begin{document}

\chapter{Un exemple de titre assez long}
\lipsum[1]
\chapter{Court titre}
\lipsum[1]

\end{document}
Clément Boulonne - Professeur freelance de mathématiques

Spécialiste LaTeX et informatique

Site web (Enseignement / CAPES / Licence / Libramaths) : http://cboumaths.wordpress.com
Clembou
Hecto-utilisateur
 
Messages: 97
Inscription: Lundi 08 Janvier 2007, 18:34
Localisation: Seclin, Nord
Statut actuel: Actif et salarié | Enseignant

Re: Titre de chapitre encadré (titlesec)

Messagepar sarmin » Lundi 15 Août 2011, 21:31

Merci, néanmoins mon problème concerne bien l'espace entre le titre (le texte du titre) et le côté bas du cadre
sarmin
Kilo-utilisateur
 
Messages: 153
Inscription: Mercredi 17 Mars 2010, 14:43
Localisation: Bruxelles, Belgique
Statut actuel: Post-bac | Ecole d'ingénieur

Re: Titre de chapitre encadré (titlesec)

Messagepar Clembou » Mardi 16 Août 2011, 10:07

Ok, je m'en doutais ! Là, je n'ai pas encore trouvé de solutions, désolé ! :?
Clément Boulonne - Professeur freelance de mathématiques

Spécialiste LaTeX et informatique

Site web (Enseignement / CAPES / Licence / Libramaths) : http://cboumaths.wordpress.com
Clembou
Hecto-utilisateur
 
Messages: 97
Inscription: Lundi 08 Janvier 2007, 18:34
Localisation: Seclin, Nord
Statut actuel: Actif et salarié | Enseignant

Re: Titre de chapitre encadré (titlesec)

Messagepar pg » Mercredi 17 Août 2011, 21:08

On peut mettre une réglure invisible au tout début du titre. Les valeurs 8pt et 30pt sont à ajuster selon l'espacement final voulu.

titlesec_chapitre_encadre.png
titlesec_chapitre_encadre.png (7.93 Kio) Vu 8779 fois


Code: Tout sélectionner
\documentclass{report}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}

\usepackage{titlesec}
\usepackage{lipsum}

%% Tronches des chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\rule{0pt}{30pt}\sffamily\Huge\bfseries\filcenter}
%%%%%%%%%%%%%%%%%%%%

\begin{document}

\chapter{Un exemple de titre assez long}
\lipsum[1]
\chapter{Court titre}
\lipsum[1]

\end{document}
pg
Modérateur
 
Messages: 2590
Inscription: Jeudi 14 Juin 2007, 23:31

Re: Titre de chapitre encadré (titlesec)

Messagepar sarmin » Mercredi 17 Août 2011, 21:58

C'est parfait, merci beaucoup !
sarmin
Kilo-utilisateur
 
Messages: 153
Inscription: Mercredi 17 Mars 2010, 14:43
Localisation: Bruxelles, Belgique
Statut actuel: Post-bac | Ecole d'ingénieur

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar Vincent Obaton » Mercredi 10 Août 2016, 09:45

Bonjour
Lorsque j'ai une page avec ce style de titre, la numérotation des pages est différente de tout le reste de mon document. Comment puis-je faire pour régler ce problème ?
Merci beaucoup.
Vincent Obaton
Vincent Obaton
Kilo-utilisateur
 
Messages: 140
Inscription: Mercredi 24 Août 2005, 19:59
Localisation: Académie de Grenoble
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar balf » Mercredi 10 Août 2016, 13:43

Bonjour,

Pourriez-vous préciser ce que vous entendez par « un style différent »? Et même, poster un exemple complet minimal?

B.A.
balf
Zetta-utilisateur
 
Messages: 3747
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar Vincent Obaton » Mercredi 10 Août 2016, 14:01

Toutes mes pages sont numérotées de cette façon \footnotesize -\thepage-
Sur les pages où il y a le titre du chapitre avec l'encadrement (du sujet de ce fil), les pages sont numérotées sans les tirets !
Au lieu d'avoir - 3 - j'ai 3 sans les tirets et en taille normal.

Pour encadrer les titres de chapitre, j'ai mis ce code :
********
%% Pour les chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\rule{0pt}{30pt}\sffamily\Huge\bfseries\filcenter}
**************
Voir l'exemple en fichier joint.( Mince je ne peut pas joindre de fichier ....)
Si besoin je vous l'envoie par mail.
Merci
Vincent
Vincent Obaton
Kilo-utilisateur
 
Messages: 140
Inscription: Mercredi 24 Août 2005, 19:59
Localisation: Académie de Grenoble
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar balf » Mercredi 10 Août 2016, 15:26

Cela dépend de la classe de document et de la façon dont vous obtenez les tirets (utilisation de fancyhdr ou de titleps. Le classe book, par example, utilise le style plain (n° de page centré dans le pied-de-page) pour la première page d'un chapitre.

Supposons que votre numérotation soit faite en demandant le style de page monpied, vous pouvez rajouter l'argument optionnel à la fin de \titleformat:

Code: Tout sélectionner
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\rule{0pt}{30pt}\sffamily\Huge\bfseries\filcenter}%
[\thispagestyle{monpied}]


B.A.

P.S. J'espère que vous n'avez pas encadré vos numéros de pages de tirets simples?
balf
Zetta-utilisateur
 
Messages: 3747
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar Vincent Obaton » Mercredi 10 Août 2016, 15:32

Voilà ce que j'ai avant \begin{document}
Code: Tout sélectionner
\documentclass[11pt,a4paper]{book}
\usepackage{pifont}
\usepackage[ansinew]{inputenc}
\usepackage{lmodern}
\usepackage{cancel}
\usepackage{graphicx,amsmath,amssymb,mathrsfs,fourier,amsthm,amsfonts}
\usepackage{array,multirow,enumerate,slashbox,multicol}
\usepackage[left=4.25cm, right=4.25cm, top=3cm, bottom=7cm,textheight=19cm]{geometry}
\usepackage{fancyhdr,fancybox}
\usepackage[francais]{babel}
\usepackage{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tocloft}
\usepackage{titlesec}
\usepackage{tikz,tkz-tab}
%\usepackage{pstricks-add}
\usepackage{boiboites}
\usepackage{enumitem}
%\usepackage{variations}
%\usepackage{pstricks,pst-plot,pstricks-add}
%\usepackage{pstricks,pst-plot,pst-text,pst-tree}
\ifpdf
\usepackage[pdftex]{graphicx}
\DeclareGraphicsExtensions{.png,.jpg,.pdf}
\else
\usepackage[dvips,dvipdfm]{graphicx}
\DeclareGraphicsExtensions{.eps}
\fi

\def\R{{\mathbb R}} % les r�els
\def\Q{{\mathbb Q}} % les rationnels
\def\Z{{\mathbb Z}} % les entiers relatifs
\def\D{{\mathbb D}} % les d�cimaux
\def\N{{\mathbb N}} % les entiers naturels
\def\C{{\mathbb C}} % les complexes
\def\d{{\text d}} \def\e{{\text e}}\def\i{{\text i}}

\def\ie{\leqslant} \def \se{\geqslant}
\def\Oij{$\left(\text{O},~\overrightarrow{\imath},~\overrightarrow{\jmath}\right)$}
\everymath{\displaystyle}

\pagestyle{fancy}
\fancyhead[L]{\footnotesize} \fancyhead[C]{}\fancyhead[R]{\scriptsize Les notions de seconde pour r\'{e}ussir en premi\`{e}re scientifique}
\fancyfoot[L]{\footnotesize } \fancyfoot[C]{\footnotesize -\thepage-}
\fancyfoot[R]{\footnotesize  }

\newsavebox{\fmbox}
\newenvironment{cadre}[1]
     {\begin{lrbox}{\fmbox}\begin{minipage}{#1}}
     {\end{minipage}\end{lrbox}\fbox{\usebox{\fmbox}}}


\newboxedtheorem[boxcolor=black, background=white, titlebackground=white,
titleboxcolor = black]{Pro}{Propri\'{e}t\'{e}}{compteur_pro}

\newboxedtheorem[boxcolor=black, background=gray!15, titlebackground=gray!20,
titleboxcolor = black, size=12cm]{Ex}{Exercice}{compteur_Ex}
\newboxedtheorem[boxcolor=black, background=gray!15, titlebackground=gray!20,
titleboxcolor = black, size=12cm]{Theme}{Th\`{e}me}{compteur_Th}


\renewcommand{\cftchapfont}{\bfseries}
\renewcommand{\cftchappagefont}{\bfseries}
\renewcommand{\cftchappresnum}{\chaptername~} %affichera Chapitre dans la TOC
\renewcommand{\cftchapaftersnum}{~}
\renewcommand{\cftchapnumwidth}{6em}

%% Pour les  chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\rule{0pt}{30pt}\sffamily\Huge\bfseries\filcenter}%
[\thispagestyle{monpied}]

%Pour les sections
\makeatletter
\renewcommand{\thesection}{\@arabic\c@section}
\makeatother

\title{Mathématiques-Les notions de secondes pour réussir en première scientifique}
\author{Vincent \bsc{OBATON}\thanks{Lyce Stendhal de Grenoble depuis 2005}}
\date{Ann\'{e}e 2016}

\setlength\parindent{0em}
\raggedbottom
Dernière édition par kojak le Mercredi 10 Août 2016, 17:03, édité 1 fois.
Raison: Utilisation des balises Code !
Vincent Obaton
Kilo-utilisateur
 
Messages: 140
Inscription: Mercredi 24 Août 2005, 19:59
Localisation: Académie de Grenoble
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar balf » Mercredi 10 Août 2016, 16:55

Voilà, c'est fait. J'ai un peu arrangé les pieds-de-page en y mettant des tirets semi-cadratins et un peu d'air autour. Puisque vous utilisez fourier (excellent choix!), j'ai rajouté le chargement de la police erewhon pour le texte: c'est un clone d'Utopia, sur laquelle est basée Fourier, qui vous rajoute de vraies petites capitales et quelques autres bricoles (dont de vrais chiffres supérieurs pour les appels de notes).

Je me suis permis de simplifier un peu votre préambule, et même de changer un ou deux détails, comme de changer l'encodage en utf8: tous les éditeurs modernes fonctionnent par défaut dans cet encodage, et c'est le seul, avec ascii, qui soit universel (fonctionne sur toutes les plates)-formes.

Aussi, de nos jours, vous pouvez utiliser les lettres accentuées au lieu de faire des contorsions du genre \`{e}. Ça, c'était avant l'encodage T1, il y a plus de 20ans.

J'ai simplifié le chargement (qui est commenté) des divers membres de la famille pstricks: pstricks-add charge la plupart des autres. Remplacé slashbox, obsolète, par diagbox, qui marche mieux, pour les quelques cas ou j'en ai eu besoin.

J'ai commenté boiboites et ce qui en dépend, car il n'est pas installé chez moi. Au passage, pour personnaliser les théorèmes, vous devriez jeter un œil à l'extension thmtools, qui coopère aussi bien avec ntheorem qu'avec amsthm

Je ne sais pas très bien à quoi sert de nos jours une déclaration comme \DeclareGraphicsExtension: toutes les extensions mentionnées sont standard et pdflatex les connaît.
Code: Tout sélectionner
\documentclass[11pt, francais, a4paper]{book}
\usepackage{pifont}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage{cancel}
\usepackage{graphicx,amsmath,amssymb,mathrsfs,fourier,amsthm,amsfonts}
\usepackage{erewhon}
\usepackage{array,multirow, diagbox, multicol}%slashbox,enumerate,
\usepackage[hmargin=4.25cm, top=3cm, bottom=7cm]{geometry}
\usepackage{fancyhdr,fancybox}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tocloft}
\usepackage{titlesec}
\usepackage{tikz,tkz-tab}
%\usepackage{boiboites}
\usepackage{enumitem}
%\usepackage{variations}
%\usepackage{pstricks-add}
%\usepackage{pst-text,pst-tree}
%\ifpdf
\usepackage{graphicx}%[pdftex]
%\DeclareGraphicsExtensions{.png,.jpg,.pdf}
%\else
%\usepackage[dvips,dvipdfm]{graphicx}
%\DeclareGraphicsExtensions{.eps}
%\fi

\def\R{{\mathbb R}} % les réels
\def\Q{{\mathbb Q}} % les rationnels
\def\Z{{\mathbb Z}} % les entiers relatifs
\def\D{{\mathbb D}} % les décimaux
\def\N{{\mathbb N}} % les entiers naturels
\def\C{{\mathbb C}} % les complexes
\def\d{{\text d}} \def\e{{\text e}}\def\i{{\text i}}

\def\ie{\leqslant} \def \se{\geqslant}
\def\Oij{$\left(\text{O},~\overrightarrow{\imath},~\overrightarrow{\jmath}\right)$}
\everymath{\displaystyle}

\pagestyle{fancy}
\fancyhead[L]{\footnotesize} \fancyhead[C]{}\fancyhead[R]{\scriptsize Les notions de seconde pour réussir en première scientifique}
\fancyfoot[L]{\footnotesize } \fancyfoot[C]{\footnotesize --\,\thepage\,--}
\fancyfoot[R]{\footnotesize }

\fancypagestyle{monpied}{%
\fancyhf{}
\renewcommand\headrulewidth{0pt}
\fancyfoot[C]{\footnotesize --\,\thepage\,--}
}

\newsavebox{\fmbox}
\newenvironment{cadre}[1]
{\begin{lrbox}{\fmbox}\begin{minipage}{#1}}
{\end{minipage}\end{lrbox}\fbox{\usebox{\fmbox}}}


%\newboxedtheorem[boxcolor=black, background=white, titlebackground=white,
%titleboxcolor = black]{Pro}{Propri\'{e}t\'{e}}{compteur_pro}
%
%\newboxedtheorem[boxcolor=black, background=gray!15, titlebackground=gray!20,
%titleboxcolor = black, size=12cm]{Ex}{Exercice}{compteur_Ex}
%\newboxedtheorem[boxcolor=black, background=gray!15, titlebackground=gray!20,
%titleboxcolor = black, size=12cm]{Theme}{Th\`{e}me}{compteur_Th}


\renewcommand{\cftchapfont}{\bfseries}
\renewcommand{\cftchappagefont}{\bfseries}
\renewcommand{\cftchappresnum}{\chaptername~} %affichera Chapitre dans la TOC
\renewcommand{\cftchapaftersnum}{~}
\renewcommand{\cftchapnumwidth}{6em}

%% Pour les chapitres
\titleformat{\chapter}[frame]
{\normalsize}%
{\filright\sffamily\Large%
\enspace Chapitre \thechapter\enspace}%
{8pt}
{\rule{0pt}{30pt}\sffamily\Huge\bfseries\filcenter}%
[\thispagestyle{monpied}]

%Pour les sections
\renewcommand{\thesection}{\arabic{section}}

\title{Mathématiques-Les notions de secondes pour réussir en première scientifique}
\author{Vincent \bsc{OBATON}\thanks{Lycée Stendhal de Grenoble depuis 2005}}
\date{Ann\'{e}e 2016}

\setlength\parindent{0em}
\raggedbottom
\widowpenalty=10000
\clubpenalty=10000
\usepackage{lipsum}

 \begin{document}
\chapter{Un premier chapitre}

\section{Une section}
\lipsum

\end{document}


B.A.
Fichiers joints
obaton_pageno.pdf
(109.65 Kio) Téléchargé 109 fois
balf
Zetta-utilisateur
 
Messages: 3747
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar Vincent Obaton » Mercredi 10 Août 2016, 20:05

Super cela fonctionne très bien pour les pages avec les cadres.
Merci beaucoup.
Il me reste le même problème sur la première page de la table des matières
\tableofcontents
Pourquoi tant de choses bizarres ?
Merci encore.
Vincent
Vincent Obaton
Kilo-utilisateur
 
Messages: 140
Inscription: Mercredi 24 Août 2005, 19:59
Localisation: Académie de Grenoble
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar balf » Jeudi 11 Août 2016, 09:44

Il suffit de rajouter, immédiatement après \titleofcontents, la commande \thispage{style}{monpied}.

La raison du comportement est que \titleformat{\chapter}… ne s'applique qu'aux chapitres numérotés, pas à \chapter*. Si vous en avez pas mal d'autres et qu'il est fastidieux de taper \thispagestyle{monpied} chaque fois, il est possible de redéfinir le formatage de ces chapitres avec la commande

\titleformat{name=\chapter, numberless} … [\thispagestyle{monpied]

B.A.
balf
Zetta-utilisateur
 
Messages: 3747
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: [Résolu] Titre de chapitre encadré (titlesec)

Messagepar Vincent Obaton » Vendredi 12 Août 2016, 17:21

Merci beaucoup tout fonctionne.
Vincent Obaton
Vincent Obaton
Kilo-utilisateur
 
Messages: 140
Inscription: Mercredi 24 Août 2005, 19:59
Localisation: Académie de Grenoble
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot], Google Adsense [Bot], Grapeshot [Crawler], Proximic [Spider], Yandex [Bot] et 35 invités