настроить только один раздел

настроить только один раздел

Я уже задавал этот вопрос, но не получил ответов. Я пытался найти решение, но у меня все еще есть проблемы.

Я хочу создать документ, в котором все разделы отображаются со стилем, и только один раздел отображается с другим стилем. Для этого я реализовал два стиля раздела, но моя проблема в том, что у меня не получается поместить их в один и тот же документ.

Вот код моего раздела, который отображается в другом стиле (раздел два):

\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для изменения форматирования заголовков разделов, и вызывать эти команды в середине документа.

Не забывайте, что вам нужно использовать ##в определении макроса, если вы хотите, чтобы макрос вставлял a #при его расширении. Это нужно для передачи#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}

Скриншот

Связанный контент