Используйте titleclass только в части документа

Используйте titleclass только в части документа

Для моего текущего проекта мне нужно, чтобы мой документ состоял из трех частей. В первой и последней части я хочу секционирование по умолчанию, но в средней части мне нужно применить другой стиль к уровню раздела ниже \part. Поскольку этот стиль должен иметь отдельную страницу, похожую на ту, что у \part, я рассмотрел возможность использования titlesec's \titleclassтаким образом:

\titleclass{\mysection}{page}[\part]

Однако это смещает уровни разделов \chapterи т. д., которые мне нужны для нормальной работы в других частях документа. Есть ли способ сбросить уровни разделов до предыдущих значений? Или другой способ достичь моей цели?

Я рассматривал вариант использования \titleformat{\chapter}..., но это оставляет меня с проблемой сброса нескольких настроек в конце, включая текущий номер главы (который должен продолжаться с первой части), и я не совсем уверен, как это сделать.

решение1

Не уверен, что я неправильно понял вопрос, но нет никаких проблем с переопределением формата заголовков разделов в теле документа. Здесь я делаю это с помощью \section, но вы можете сделать то же самое для глав, частей и т. д.

Заголовки после переопределения будут иметь новый формат (пока вы не переопределите их снова).

Я просто использую tcolorbox в качестве примера форматирования — вы можете использовать что угодно.

\documentclass[10pt]{article}
\usepackage[explicit]{titlesec}
\usepackage[most]{tcolorbox}

%original definition
\titleformat{\section}
  {\normalfont\bfseries\itshape\fontsize{12.8}{14}\selectfont}
  {}{0pt}
  {\begin{tcolorbox}[]\thesection\hskip0.7em#1\end{tcolorbox}}
%end of original definition

\begin{document}

\section{A section}

Bla bla

\section{Another section}

\subsection{A Subsection}

%another definition
\titleformat{\section}
  {\normalfont\bfseries\itshape\fontsize{12.8}{14}\selectfont}
  {}{0pt}
  {\begin{tcolorbox}[
      enhanced,
      boxrule=0pt,
      arc=0pt,
      outer arc=0pt,
      interior code={\fill[overlay,cyan!30] (frame.north west) rectangle (frame.south east);},
    ]\thesection\hskip0.7em#1\end{tcolorbox}}
%end of other definition

\section{Another section with a difference}

\subsection{Another subsection}

\end{document}

введите описание изображения здесь

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