我使用了一个book
类,这里是我为章节设计的精美标题页的一部分mainmatter
。
\newlength\chapterwidth
\settowidth\chapterwidth{\huge\chaptertitlename}
\titleformat{\chapter}[display]
{\normalfont\filcenter}
{\tikz[remember picture,overlay]{
\node[fill=nicedarkblue,font=\sffamily\fontsize{96}{72}\bf\selectfont\color{white},anchor=north east, minimum width=3cm, minimum height=3.4cm]
at ([xshift=-1cm,yshift=-1cm]current page.north east)
(numb) {\thechapter};
\node[rotate=90,anchor=south,inner sep=4pt,font=\Huge\sffamily] at (numb.west) {Chapter};
}
}{20pt}{\scshape\Huge\color{nicedarkblue}#1}[\vskip10pt\Large***]
我不掌握乳胶中的条件,但我希望有四种不同的风格:
- 前言章节
- 主要章节
- 正文附录
- 附录章节
如何根据这些条件进行分支?
答案1
一般来说,您不需要在标题格式中包含“条件”来确定标题在文档中的使用位置,而是可以 (a) 在格式本身中包含将适当扩展的宏(例如,\chaptertitlename
一旦给出就会重新定义)或 (b)在文档的适当位置\appendix
使用新的重新定义。\titleformat
由于您没有提供完整的可编译 MWE,所以我对您的设置有些猜测。但这里有一个简短的例子。这基本上是您的代码,但 (a) 我没有在打印彩色框的部分“硬编码”单词“Chapter”,\chaptertitlename
而是使用了 (b) 我没有在您使用颜色的两个地方硬编码颜色,而是放置了一个宏,因此可以轻松重新定义。
\documentclass{book}
\usepackage[explicit]{titlesec}
\usepackage{lipsum}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\newcommand{\chaptercolor}{blue}
\usepackage{tikz}
\titleformat{\chapter}
[display]
{\normalfont\filcenter}
{\tikz[remember picture,overlay]
{\node[fill=\chaptercolor,%<--- Not hardcoded color
font=\sffamily\fontsize{96}{72}\bf\selectfont\color{white},anchor=north east,
minimum width=3cm,
minimum height=3.4cm]
at ([xshift=-1cm,yshift=-1cm]current page.north east)
(numb) {\thechapter};
\node[rotate=90,
anchor=south,
inner sep=4pt,
font=\Huge\sffamily]
at (numb.west) {\chaptertitlename};%<-- Not hardcoded "CHAPTER"
}}
{20pt}
{\Huge\bfseries\color{\chaptercolor}#1}%< Not hardcoded color
[\vskip10pt\Large\bfseries***]
\begin{document}
\frontmatter
\chapter{Preface}
\lipsum
\mainmatter\renewcommand{\chaptercolor}{red}
\chapter{Chapter}
\lipsum
\appendix\renewcommand{\chaptercolor}{green!40!black!60}
\chapter{Appendix Something}
\end{document}