我已经问过这个问题,但还没有得到答案。我试图找到解决方案,但仍然有问题。
我想制作一个文档,其中所有部分都以一种样式显示,而只有一个部分以不同的样式显示,为此我实现了两种部分的样式,但我的问题是我无法将它们放在同一个文档中。
以下是以不同样式出现的我的部分的代码(第二部分):
\documentclass{book}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\definecolor{myBlue}{HTML}{0088FF}
\begin{document}
\chapter{CHAP 1}
\section{Section one}
\titleformat{\section}[hang]{\Large\bfseries\sffamily\fontfamily{pag}\selectfont}%
{\rlap{\color{myBlue}\rule[-6pt]{\textwidth}{1.2pt}}\colorbox{myBlue}{%
\raisebox{0pt}[13pt][3pt]{ \makebox[70pt]{% height, width
\fontfamily{pag}\selectfont\color{white}{\thesection}}
}}}%
{15pt}%
{ \color{myBlue}#1
%
}
\section{Section two}
\lipsum[2]
\lipsum[1]
\titleformat{\section}[block]
{\normalfont\large\bfseries}
{\thesection}
{1em}{#1}
{}
\section{Section three}
\section{Section four}
\end{document}
对于第一、三和四部分我想使用以下代码:
\renewcommand{\section}{\@startsection{section}{1}{\z@}
{-12pt \@plus -1ex \@minus -.4ex}
{2ex \@plus.2ex }
{\normalfont\fontsize{14pt}{16pt}\fontfamily{pag}\bfseries\color{myBlue}}}
我希望最终的结果像这张图一样:
答案1
您可以创建命令(名为\setupnormalsections
和\setupspecialsections
此处)来\titleformat
更改章节标题的格式,并在文档中间调用这些命令。
##
不要忘记,如果您希望宏在展开时插入,则必须在宏定义中使用#
。您需要通过#1
照原样在 的第五个强制参数中\titleformat
。如果没有这两个#
,则无论宏替换文本中出现#1
,扩展宏都会将其替换#1
为宏的第一个参数。首先,这不是这里想要的。其次,这里讨论的宏是\setupnormalsections
和\setupspecialsections
;它们不接受任何参数。
\documentclass{book}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\definecolor{myBlue}{HTML}{0088FF}
\makeatletter
\newcommand*{\setupnormalsections}{%
\titleformat{\section}[block]
{\normalfont\fontsize{14pt}{16pt}\fontfamily{pag}\bfseries\color{myBlue}}
{\thesection}
{1em}{##1}
{}%
}
\newcommand*{\setupspecialsections}{%
\titleformat{\section}[hang]
{\Large\bfseries\sffamily\fontfamily{pag}\selectfont}%
{\rlap{\color{myBlue}\rule[-6pt]{\textwidth}{1.2pt}}\colorbox{myBlue}{%
\raisebox{0pt}[13pt][3pt]{\makebox[70pt]{% height, width
\fontfamily{pag}\selectfont\color{white}{\thesection}}%
}}}%
{15pt}%
{\color{myBlue}##1}%
}
\makeatother
\setupnormalsections
\begin{document}
\chapter{CHAP 1}
\section{Section one}
\setupspecialsections
\section{Section two}
\lipsum[2]
\lipsum[1]
\setupnormalsections
\section{Section three}
\section{Section four}
\end{document}