
Estou tentando criar um novo \section
comando com uma formatação de texto ligeiramente diferente. Embora eu possa descobrir como fazer isso com o titlesec
pacote, gostaria de evitar inserir manualmente a formatação e o espaçamento.
Até agora eu tenho
\titleclass{\customsec}{straight}[\section]
\newcounter{customsec}
\titleformat{\customsec}{\sffamily\normalsize\bfseries}{}{0em}{Custom text \thecustomsec:~}
\titlespacing*{\customsec}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus .2ex}
Atualmente inseri manualmente alguns valores de fonte, tamanho, etc., mas gostaria que isso fosse uma cópia exata da formatação de \section
. A única mudança que preciso é poder alterar o texto no título da seção. Existe algum comando que possa extrair isso para mim?
Ou a maneira correta é apenas renovar o comando na parte do texto onde preciso da seção personalizada e restaurá-lo posteriormente?
Responder1
Não sei como extrair o estilo exato do \section
comando padrão, mas parece que titlesec
não oferece facilidades para isso e fazê-lo manualmente ou automaticamente seria frágil.
No entanto, apenas alterar localmente o rótulo do título parece ser bastante fácil e, usando um grupo TeX (que é a camada interna de colchetes), ele volta automaticamente ao padrão quando terminarmos.
\documentclass{article}
\usepackage{titlesec}
\newcommand\customsec[1]{{%
\titlelabel{Custom text \thetitle:~}%
\section{#1}%
}}
\begin{document}
\section{normal section}
\customsec{custom section}
\section{normal section}
\customsec{custom section}
\end{document}
EDITAR: Em uma versão mais antiga deste post, foram mostradas duas versões mais complicadas que redefiniam manualmente \titlelabel
para o padrão ou acessavam macros internas do LaTeX para salvá-lo e restaurá-lo.