personalize apenas uma seção

personalize apenas uma seção

Já fiz esta pergunta mas não obtive respostas. Tentei encontrar uma solução, mas ainda tenho problemas.

Quero fazer um documento em que todas as seções apareçam com um estilo e apenas uma seção apareça com estilo diferente, para isso realizei dois estilos de seção mas meu problema é que não consigo colocar no mesmo documento.

Aqui está o código da minha seção que aparece com estilo diferente (seção dois):

\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} 

insira a descrição da imagem aqui

para as seções um, três e quatro, quero usar este código:

\renewcommand{\section}{\@startsection{section}{1}{\z@}
{-12pt \@plus -1ex \@minus -.4ex}
{2ex \@plus.2ex }
{\normalfont\fontsize{14pt}{16pt}\fontfamily{pag}\bfseries\color{myBlue}}}

insira a descrição da imagem aqui

Quero que o resultado final seja como esta imagem:

insira a descrição da imagem aqui

Responder1

Você pode criar comandos (nomeados \setupnormalsectionse \setupspecialsectionsaqui) que \titleformatalteram a forma como os títulos das seções são formatados e chamar esses comandos no meio do documento.

Não se esqueça que você deve usar ##uma definição de macro se quiser que a macro insira um #quando for expandida. Você precisa que isso passe#1 como éno quinto argumento obrigatório de \titleformat. Sem os dois #, onde quer que o texto de substituição da macro seja lido #1, a expansão da macro substituiria isso #1pelo primeiro argumento da macro. Primeiro, isso não é desejado aqui. Segundo, as macros em questão aqui são \setupnormalsectionse \setupspecialsections; eles não aceitam argumentos.

\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}

captura de tela

informação relacionada