我想要一个特定的章节标题,如下图所示(章节标题在右侧,但节标题在左侧)你能帮我吗?
答案1
您可以使用该titlesec
包及其\titleformat
命令\titlespacing
。
\documentclass{book}
\usepackage[pass,showframe]{geometry}
\usepackage{titlesec}
\titleformat{\chapter}[display]
{\filleft\Large}
{\chaptername\ \thechapter}
{5ex}
{\bfseries\MakeUppercase}
\titlespacing*{\chapter}
{0pt}
{-15pt}
{60pt}
\begin{document}
\mainmatter
\chapter{Introduction}
\section{Motivation}
Bla
\end{document}
\usepackage[pass,showframe]{geometry}
添加此行只是为了显示结果。
这里提供一种仅对主要部分进行修改的方法。
\documentclass{book}
\usepackage[pass,showframe]{geometry}
\usepackage{titlesec}
\makeatletter
\let\ttl@save@mkchapOrig\@makechapterhead
\let\ttl@save@mkschapOrig\@makeschapterhead
\titleformat{\chapter}[display]
{\filleft\Large}
{\chaptername\ \thechapter}
{5ex}
{\bfseries\MakeUppercase}
\titlespacing*{\chapter}
{0pt}
{-15pt}
{60pt}
\let\ttl@save@mkchapFormat\@makechapterhead
\let\ttl@save@mkschapFormat\@makeschapterhead
\g@addto@macro\frontmatter{%
\let\@makechapterhead\ttl@save@mkchapOrig%
\let\@makeschapterhead\ttl@save@mkschapOrig}
\g@addto@macro\mainmatter{%
\let\@makechapterhead\ttl@save@mkchapFormat%
\let\@makeschapterhead\ttl@save@mkschapFormat}
\g@addto@macro\backmatter{%
\let\@makechapterhead\ttl@save@mkchapOrig%
\let\@makeschapterhead\ttl@save@mkschapOrig}
\makeatother
\begin{document}
\frontmatter
\tableofcontents
\listoffigures
\mainmatter
\chapter{Introduction}
\section{Motivation}
Bla
\backmatter
\appendix
\chapter{appendix}
\end{document}