titlesec/titletoc/tikz 问题

titlesec/titletoc/tikz 问题

我在专用于目录的表单中遇到了问题。我使用 titlesec/titletoc/tikz,除了“目录”页面外,其他页面都运行正常。

我有这个结果:

在此处输入图片描述

问题是我不想在“Table des matières”(即目录)之前出现这个“Chapitre 0:”。

使用的代码是:

% |_-_-_-_-_-_-_-_-| Package pour redéfinir les titres |_-_-_-_-_-_-_-_-|%
\usepackage{titlesec}
\usepackage{titletoc}

% |_-_-_-_-_-_-_-_-|  Numérotation des sections  |_-_-_-_-_-_-_-_-|%
\setcounter{secnumdepth}{5}
\renewcommand{\thechapter}{\arabic{chapter}}
\renewcommand{\thesection}{\arabic{section}}
\renewcommand{\thesubsection}{{\thesection}.\alph{subsection}}
\renewcommand{\thesubsubsection}%
    {{\thesubsection}$_{\textnormal{\bfseries\emph{\arabic{subsubsection}}}}$}
\renewcommand{\theparagraph}{}
\renewcommand{\thesubparagraph}{}

% >>>> A tikz box for chapters

\newcommand\boxedchapter[1]{{%
        \begin{center}
        \begin{tikzpicture}
        \node (0,0) [left color=Marron!40!white, right     color=Anthracite!20%
        , text=RougeSang, font=\bf\Huge] {Chapitre \thechapter : #1} ;
    \end{tikzpicture}%
        \end{center}
}}
\titleformat{\chapter}%              
    {}%
    {}%
    {0pt}%
    {\boxedchapter}%

如果我删除所有部分% >>>> A tikz box for chapters,问题就会消失(只有“Table des matières”而没有“Chapitre 0:”),但“Chapitre 1”、“Chapitre 2”等也会消失,我想保留这些(目录除外),如下所示:


在此处输入图片描述

谢谢你的帮助。

答案1

这个问题很容易解决:只需要检查计数器是否\thechapter有非 0 的值。因此:

\newcommand\boxedchapter[1]{{%
\begin{center}
\begin{tikzpicture}
\ifnum\value{chapter}=0% only the content is boxed
\node (0,0) [left color=Marron!40!white, right color=Anthracite!20, text=RougeSang, font=\bf\Huge] {#1} ;
\else% display Chapter <number> : title
\node (0,0) [left color=Marron!40!white, right color=Anthracite!20, text=RougeSang, font=\bf\Huge] {Chapitre \thechapter : #1} ;
\fi
\end{tikzpicture}%
\end{center}
}}

一个完整的例子(使用了虚构的颜色,因为和Marron的定义尚不清楚):AnthraciteRougeSang

\documentclass[a4paper,11pt,x11names]{report}

\usepackage[french]{babel}
% |_-_-_-_-_-_-_-_-| Package pour redéfinir les titres |_-_-_-_-_-_-_-_-|%
\usepackage{tikz}
\usepackage{titlesec}
\usepackage{titletoc}

\colorlet{RougeSang}{OrangeRed1}
\colorlet{Marron}{Sienna1}
\colorlet{Anthracite}{LightYellow1}

% |_-_-_-_-_-_-_-_-|  Numérotation des sections  |_-_-_-_-_-_-_-_-|%
\setcounter{secnumdepth}{5}
\renewcommand{\thechapter}{\arabic{chapter}}
\renewcommand{\thesection}{\arabic{section}}
\renewcommand{\thesubsection}{\thesection.\alph{subsection}}
\renewcommand{\thesubsubsection}%
    {\thesubsection$_{\textnormal{\bfseries\emph{\arabic{subsubsection}}}}$}
\renewcommand{\theparagraph}{}
\renewcommand{\thesubparagraph}{}

% >>>> A tikz box for chapters

\newcommand\boxedchapter[1]{{%
\begin{center}
\begin{tikzpicture}
\ifnum\value{chapter}=0
\node (0,0) [left color=Marron!40!white, right color=Anthracite!20, text=RougeSang, font=\bf\Huge] {#1} ;
\else
\node (0,0) [left color=Marron!40!white, right color=Anthracite!20, text=RougeSang, font=\bf\Huge] {Chapitre \thechapter : #1} ;
\fi
\end{tikzpicture}%
\end{center}
}}
\titleformat{\chapter}%              
    {}%
    {}%
    {0pt}%
    {\boxedchapter}%

\usepackage[colorlinks]{hyperref}


\begin{document}
\tableofcontents
\chapter{Les vecteurs}
\section{Notion de vecteur}

\end{document}

这提供了:

在此处输入图片描述

在此处输入图片描述

答案2

使用numberless键定义未编号章节的格式。例如

\titleformat{name=\chapter,numberless}%
    {}%
    {}%
    {0pt}%
    {\unnumberedboxedchapter}%    

并给出适当的定义\unnumberedboxedchapter

相关内容