我正在使用文档类report
,并决定对章节标题使用 Vincent Zoonekynd 的预定义样式之一并进行一些修改。我更希望使用\chapter
不同\chapter*
的定义。
对于此章的风格:
\documentclass{report}
\usepackage{xcolor}
\makeatletter
\def\LigneVerticale{\vrule height 1.5cm depth 0.9cm\hspace{0.1cm}\relax}
\def\LignesVerticales{%
\let\LV\LigneVerticale\LV\LV\LV\LV\LV\LV\LV\LV\LV\LV}
\def\GrosCarreAvecUnChiffre#1{%
\rlap{\vrule height 0.8cm width 1cm depth 0.2cm}%
\rlap{\hbox to 1cm{\hss\mbox{\white #1}\hss}}%
\vrule height 0pt width 1cm depth 0pt}
\def\@makechapterhead#1{
\vspace*{-20pt}
\hbox{%
\huge\bfseries
\LignesVerticales
\hspace{-0.62cm}%
\GrosCarreAvecUnChiffre{\thechapter}
\hspace{0.2cm}\hbox{#1}%
}\par\vskip 0.5cm}
\makeatother
\begin{document}
\chapter{Name}
\end{document}
对于\chapter*
这种风格:
\documentclass{report}
\usepackage{xcolor}
\makeatletter
\def\LigneVerticale{\vrule height 1.5cm depth 0.9cm\hspace{0.1cm}\relax}
\def\LignesVerticales{%
\let\LV\LigneVerticale\LV\LV\LV\LV\LV\LV\LV\LV\LV\LV}
\def\GrosCarreAvecUnChiffre#1{{%
\color{white}%
\rlap{\vrule height 0.8cm width 1cm depth 0.2cm}%
\rlap{\hbox to 1cm{\hss\mbox{\color{black}#1}\hss}}%
\vrule height 0pt width 1cm depth 0pt}}
\def\@makeschapterhead#1{
\vspace*{-20pt}
\hbox{%
\huge\bfseries
\LignesVerticales
\hspace{-0.62cm}%
\GrosCarreAvecUnChiffre{\thechapter}
\hspace{0.2cm}\hbox{#1}%
}\par\vskip 0.5cm}
\makeatother
\begin{document}
\chapter*{Names}
\end{document}
现在我有两个问题:
- 如何修改第二种样式(对于
\chapter*
)以获得此输出 - 没有数字{零}并且章节名称在垂直线之间的空间中向左移动。 - 如何在一个文档中定义两种样式,以便能够同时使用它们。
答案1
\chapter
您更改了与( \@makechapterhead
) 和\chapter*
( )相关的正确命令\@makeschapterhead
。
不同的命令是\LigneVerticale
和\GrosCarreAvecUnChiffre
。
因此只需定义一个星号版本和另一个普通版本即可。
就像是:
正常标题:
\def\LigneVerticale{...
\def\GrosCarreAvecUnChiffre#1{...
加星标的版本。
\def\LigneVerticaleS{...
\def\GrosCarreAvecUnChiffreS#1{...