章节标题

章节标题

我正在使用文档类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}

现在我有两个问题:

  1. 如何修改第二种样式(对于\chapter*)以获得此输出 - 没有数字{零}并且章节名称在垂直线之间的空间中向左移动。
  2. 如何在一个文档中定义两种样式,以便能够同时使用它们。

答案1

\chapter您更改了与( \@makechapterhead) 和\chapter*( )相关的正确命令\@makeschapterhead

不同的命令是\LigneVerticale\GrosCarreAvecUnChiffre

因此只需定义一个星号版本和另一个普通版本即可。

就像是:

正常标题:

\def\LigneVerticale{...
\def\GrosCarreAvecUnChiffre#1{...

加星标的版本。

\def\LigneVerticaleS{...
\def\GrosCarreAvecUnChiffreS#1{...

相关内容