Style de chapitre
Bonjour à tous,
J'aimerais modifier le style des chapitres de mes documents afin d'obtenir le résultat ci-dessous. Pour cela, j'ai tenté de modifier le style glenn proposé dans le package fncychap mais cela n'a pas abouti. J'ai donc essayé de le faire à l'aide du package explicit mais je n'ai pas réussi non plus. Si quelqu'un peut venir à mon secours ça serait bien cool.
D'avance merci.
J'aimerais modifier le style des chapitres de mes documents afin d'obtenir le résultat ci-dessous. Pour cela, j'ai tenté de modifier le style glenn proposé dans le package fncychap mais cela n'a pas abouti. J'ai donc essayé de le faire à l'aide du package explicit mais je n'ai pas réussi non plus. Si quelqu'un peut venir à mon secours ça serait bien cool.
D'avance merci.
Réponses
-
M'est avis que ce n'est pas très joli (trop chargé) — mais le client est roi, n'est-ce pas ?
\documentclass[a4paper,11pt,french]{book} \usepackage{lmodern} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{babel} \usepackage{textcomp} \usepackage{etoolbox} \usepackage[explicit]{titlesec} \usepackage{kantlipsum} % juste pour le texte bidon \usepackage{tikz} \usetikzlibrary{babel} % Indique si on travaille sur un \chapter ou un \chapter* \newtoggle{chapDecoIsNumberedChap} % Commande « de haut niveau » pour la déco du numéro de chapitre : deux % déclinaisons (version étoilée, version non étoilée). \makeatletter \newcommand*{\chapDecoFrame}{% \@ifstar{% \togglefalse{chapDecoIsNumberedChap}% \@chapDecoFrame\@nil % pas de numéro de chapitre en argument }{% \toggletrue{chapDecoIsNumberedChap}% \@chapDecoFrame }% } % #1 : Numéro de chapitre si chapDecoIsNumberedChap est vrai, sinon \@nil. % #2 : Titre du chapitre \newcommand*{\@chapDecoFrame}[2]{% % Décommenter les deux lignes suivantes pour visualiser la hauteur de la % boîte produite : % \hbox to \linewidth{\hss\hbox to 1.1\linewidth{\hrulefill}\hss} % \nointerlineskip % % On s'assure que les dimensions ne dépendent pas du numéro de chapitre % et ne vont pas varier au cas où TikZ changerait les règles par rapport à % la largeur de ligne (\pgflinewidth). \hbox to \linewidth{% \hss \@chapDecoTikzPicture{#1}{#2}% \hss}% } \newcommand*{\@chapDecoTikzPicture}[2]{% \begin{tikzpicture} % Cadre et titre du chapitre \node[rectangle, draw, line width=\chapDecoRuleWidth, minimum width=\linewidth, inner sep=0.75cm] (cadre) {\chapterTitleFont #2}; \iftoggle{chapDecoIsNumberedChap}{% cas de \chapter % Chapitre <numéro> \node[fill=white, anchor=base west, inner xsep=0pt, inner ysep=3pt] at ([shift={(-\pgflinewidth,-\chapDecoRuleWidth)}]cadre.north west) {\chapterTitleLabelFont \strut\MakeUppercase{\chaptername}~#1\kern 3pt}; }{% Même occupation de l'espace vertical \node[anchor=base west, inner xsep=0pt, inner ysep=3pt] at ([shift={(-\pgflinewidth,-\chapDecoRuleWidth)}]cadre.north west) {\chapterTitleLabelFont \strut\phantom{\MakeUppercase{\chaptername}}}; } % Lycée \node[anchor=south west, inner sep=1pt] at (cadre.south west) {\chapterTitleSchoolFont \chapterTitleSchoolName}; % Année \node[anchor=north east, inner sep=1pt] at (cadre.north east) {\chapterTitleYearFont \chapterTitleYear}; % Matière \node[fill=white, anchor=base east, inner xsep=0pt, inner ysep=3pt] at ([xshift=\pgflinewidth]cadre.south east) {\kern 3pt \chapterTitleMatterFont \strut{\chapterTitleMatter}}; \end{tikzpicture}% } \makeatother % **************************************************************************** % * Configuration de 'titlesec' * % **************************************************************************** \newcommand*{\chapterTitleSchoolName}{Lycée} \newcommand*{\chapterTitleYear}{2019\slash 2020} \newcommand*{\chapterTitleMatter}{Maths} \newcommand*{\chapterTitleFont}{% \fontsize{24.88}{29.856}\usefont{T1}{lmr}{m}{sc}% } \newcommand*{\chapterTitleLabelFont}{% \fontsize{11}{13.2}\usefont{T1}{lmss}{bx}{n}% } \newcommand*{\chapterTitleMatterFont}{% \fontsize{11}{13.2}\usefont{T1}{lmr}{m}{sc}% } \newcommand*{\chapterTitleYearFont}{% \fontsize{11}{13.2}\usefont{T1}{lmss}{m}{n}% } \newcommand*{\chapterTitleSchoolFont}{% \fontsize{11}{13.2}\usefont{T1}{lmss}{m}{n}% } % Le cadre au-dessus du titre de chapitre comporte un \strut de taille définie % par \chapterNumberFont, donc il y a déjà un peu d'espace. \newcommand*{\spaceBeforeChapterFrame}{0pt} \newcommand*{\spaceAfterChapterFrame}{0pt} \newcommand*{\spaceAfterChapterTitle}{60pt plus 1pt minus 1pt} % Largeur de la ligne utilisée pour le cadre autour des titres de chapitres \newcommand*{\chapDecoRuleWidth}{1pt} % Pour \chapter \titleformat{\chapter}[display] {}{}{\spaceAfterChapterFrame}{\chapDecoFrame{\thechapter}{#1}} % Pour \chapter* \titleformat{name=\chapter, numberless}[display] {}{}{\spaceAfterChapterFrame}{\chapDecoFrame*{#1}} \titlespacing{\chapter}{0pt}{\spaceBeforeChapterFrame}{\spaceAfterChapterTitle} \begin{document} \chapter{Titre du chapitre un} \kant[1] \setcounter{chapter}{25}% \chapter{Titre du chapitre vingt-six} \kant[2] \chapter*{Titre du chapitre sans numéro} \kant[3] \end{document}
-
Merci pour ton retour.
Dernière question, j’aimerais que le mot chapitre soit en petites majuscules et non en majuscules. Quelle ligne de code faut-il changer pour obtenir ce résultat ?
D’avancer merci -
\iftoggle{chapDecoIsNumberedChap}{% cas de \chapter % Chapitre <numéro> \node[fill=white, anchor=base west, inner xsep=0pt, inner ysep=3pt] at ([shift={(-\pgflinewidth,-\chapDecoRuleWidth)}]cadre.north west) {\chapterTitleLabelFont \strut\chaptername~#1\kern 3pt}; }{% Même occupation de l'espace vertical \node[anchor=base west, inner xsep=0pt, inner ysep=3pt] at ([shift={(-\pgflinewidth,-\chapDecoRuleWidth)}]cadre.north west) {\chapterTitleLabelFont \strut\phantom{\chaptername}}; } (...) \newcommand*{\chapterTitleLabelFont}{% \fontsize{11}{13.2}\usefont{T1}{lmr}{m}{sc}% }
-
Merci pour ta réponse. Comme je souhaite que le mot chapitre soit aussi en gras, j'ai remplacé le paramètre m par b dans la commande
\newcommand*{\chapterTitleLabelFont}{% \fontsize{11}{13.2}\usefont{T1}{lmr}{m}{sc}% }
et étrangement cela fait disparaître les petites majuscules.
D'où vient ce problème?
D'avance merci. -
Il faut lire les messages de LaTeX (“font substitution”, etc.). La police en question (Latin Modern Roman) n'a pas de version small caps en gras, il y a donc une substitution qui est faite et doit être signalée dans la sortie textuelle de LaTeX ainsi que dans le fichier de log. Bienvenue dans le monde merveilleux des polices.
-
Une solution acceptable peut consister en :
\newcommand*{\chapterTitleLabelFont}{% \fontsize{11}{13.2}\usefont{T1}{LinuxLibertineT-LF}{b}{sc}% }
Sinon, plus proche de Latin Modern Roman mais avec des inconvénients :\usepackage{bold-extra} (...) \newcommand*{\chapterTitleLabelFont}{% \fontsize{11}{13.2}\usefont{OT1}{cmr}{b}{sc}% }
Dans ce cas :- codage OT1 donc pas de césure correcte avec caractères accentués (ne pose pas de problème ici) ;
- police au format MetaFont ; elle est embarquée dans le PDF sous forme bitmap (PK) ; ça peut être nickel à l'impression, mais potentiellement moche à l'écran ;
- il faut avoir MetaFont installé pour produire les PK à partir des sources MF (normalement, c'est automatique).
(il y a aussi cm-super, je crois, mais bon...)
Voir cette question et le LaTeX Font Catalogue.
Connectez-vous ou Inscrivez-vous pour répondre.
Bonjour!
Catégories
- 165.6K Toutes les catégories
- 65 Collège/Lycée
- 22.2K Algèbre
- 37.7K Analyse
- 6.3K Arithmétique
- 61 Catégories et structures
- 1.1K Combinatoire et Graphes
- 13 Sciences des données
- 5.1K Concours et Examens
- 23 CultureMath
- 51 Enseignement à distance
- 2.9K Fondements et Logique
- 10.8K Géométrie
- 86 Géométrie différentielle
- 1.1K Histoire des Mathématiques
- 79 Informatique théorique
- 3.9K LaTeX
- 39K Les-mathématiques
- 3.5K Livres, articles, revues, (...)
- 2.7K Logiciels pour les mathématiques
- 29 Mathématiques et finance
- 344 Mathématiques et Physique
- 5K Mathématiques et Société
- 3.4K Pédagogie, enseignement, orientation
- 10.1K Probabilités, théorie de la mesure
- 805 Shtam
- 4.2K Statistiques
- 3.8K Topologie
- 1.4K Vie du Forum et de ses membres