不同无编号章节的标题格式不同

不同无编号章节的标题格式不同

我希望每个无编号“章节”页面的标题都有不同的样式。请参阅:

\documentclass{book}
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\normalfont\Large\filcenter\sffamily}
{\titlerule[1pt]%
\vspace{1pt}%
\titlerule
\vspace{1pc}%
\LARGE\MakeUppercase{\chaptertitlename} \thechapter}
{1pc}
{\titlerule
\vspace{1pc}%
\Huge}


\titleformat{name=\chapter,numberless}[display]
{\normalfont\Large\filcenter\sffamily}
{\titlerule[1pt]%
\vspace{1pt}%
\titlerule
\vspace{1pc}%
\LARGE{something for index only}}
{1pc}
{\titlerule
\vspace{1pc}%
\Huge}

\begin{document}
\tableofcontents
\chapter{My first chapter}
dummy text

\chapter{My second chapter}
ciao
\end{document}

使用之前的代码我有:

  1. 普通章节页的标题样式
  2. 标题样式全部无数的章节页:索引页、参考书目页等。

我想要多个无编号样式,一个用于索引页,一个用于参考书目页等。如何添加两种以上的样式?

答案1

您可以将\titleformat指令放置在任何地方,并且格式声明将适用于所有后续章节,直到\titleformat出现新指令。

最好的办法可能是在序言中定义所有格式,并将它们隐藏在宏中。例如

\newcommand{\tocformat}{%
  \titleformat{name=\chapter,numberless}[display]
    {\normalfont\Large\filcenter\sffamily}
    {\titlerule[1pt]%
     \vspace{1pt}%
     \titlerule
     \vspace{1pc}%
     \LARGE something for TOC only}%%%% <---- \LARGE doesn't take an argument
    {1pc}
    {\titlerule
     \vspace{1pc}%
     \Huge}%
}

\newcommand{\bibliographyformat}{%
  \titleformat{name=\chapter,numberless}[display]
    {\normalfont\Large\filcenter\sffamily}
    {\titlerule[1pt]%
     \vspace{1pt}%
     \titlerule
     \vspace{1pc}%
     \LARGE something for bibliography only}
    {1pc}
    {\titlerule
     \vspace{1pc}%
     \Huge}%
}

\tocformat\bibliographyformat在文档中的适当位置发布。这样,您便拥有一个“集中”位置来设置所有文档。

\...format通过将命令合并到相关命令(例如\tableofcontentsvia \pretocmdofetoolbox或类似的修补宏)中,也可以实现样式自动化。

相关内容