我用titlesec
来自定义章节标题。如何将目录标题多于水平线?
(我正在尝试自定义标题的位置,而不是标题)添加的图形是我从现有代码中获得的结果。
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\bfseries\large}
{\filleft\MakeUppercase{\chaptertitlename} \large\thechapter}
{2ex}
{\titlerule
\vspace{2ex}%
\filleft}
\titlespacing*{\chapter}{0pt}{120pt}{6pt}
答案1
使用您当前的设置,对于编号章节,规则位于章节标题上方和字符串“章节 #”下方。对于未编号的章节(例如目录),您需要不同的规范,以使规则出现在标题下方;这可以使用另一个\titleformat
命令和numberless
键来实现:
\documentclass{book}
\usepackage{titlesec}
\renewcommand\contentsname{Table of Contents}
\titleformat{\chapter}[display]
{\bfseries\large}
{\filleft\MakeUppercase{\chaptertitlename} \large\thechapter}
{2ex}
{\titlerule\vspace{2ex}\filleft}
\titleformat{name=\chapter,numberless}[display]
{\bfseries\large}
{\titlerule}
{-7ex}
{\filleft\MakeUppercase}[\vspace{5ex}]
\titlespacing*{\chapter}{0pt}{120pt}{6pt}
\begin{document}
\tableofcontents
\chapter{Test chapter}
\end{document}
目录图片:
编号章节的图像: