Как преобразовать код titlesec в код scrlayer-scrpage

Как преобразовать код titlesec в код scrlayer-scrpage

В моем коде LaTeX я использую актуальную версию пакета KOMA-script и его documentclass scrbook. В связи с этим мне интересно, как преобразовать код, который использует пакет titlesec, в код, который должен использовать более совместимый с KOMA-script пакет scrlayer-scrpage. Пожалуйста, найдите соответствующий код ниже. Я был бы очень признателен, если бы кто-нибудь мог мне помочь!

\usepackage{titlesec}
%modify part-page-style
\titleformat{\part}[display]
    {\huge\filcenter\bfseries}
    {\Huge{\MakeUppercase{\partname} \thepart}}
    {5pt}
    {\titlerule[3pt] \vspace{10pt}}
    []
%modify chapter-page-style
\titleformat{\chapter}[display]
    {\LARGE\filcenter\bfseries}
    {\titlerule[3pt] \vspace{3pt} \titlerule[1pt] \vspace{5pt} \huge{\MakeUppercase{\chaptertitlename} \thechapter}}
    {0pt}
    {\titlerule[1pt] \vspace{10pt}}
    []
\titlespacing*{\chapter}{0pt}{0pt}{40pt}

решение1

Вот предложение, которое нужноКОМА-Скрипт версия 3.17(текущая версия на CTAN) или новее:

\documentclass{scrbook}[2015/04/23]
\usepackage{microtype}
% modify part
\setkomafont{part}{\normalfont\bfseries\huge}
\setkomafont{partnumber}{\normalfont\bfseries\Huge}
\RedeclareSectionCommand[innerskip=10pt]{part}
\renewcommand\partformat{%
  \strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
    \partname~\thepart}%
  \vspace{5pt}\hrule height 3pt%
}
% modify chapter
\KOMAoptions{chapterprefix}
\renewcommand\raggedchapter{\centering}
\setkomafont{chapter}{\normalfont\bfseries\LARGE}
\setkomafont{chapterprefix}{\huge}
\RedeclareSectionCommand[beforeskip=0pt,afterskip=40pt,innerskip=12pt]{chapter}
\renewcommand\chapterformat{%
  \hrule height 3pt\vspace{3pt}\hrule height 1pt\vspace{5pt}%
  \mbox{\strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
      \chapapp\nobreakspace\thechapter}}%
  \hrule height 1pt%
}

\usepackage{blindtext}% dummy text
\begin{document}
\tableofcontents
\part{Part title}
\blinddocument
\end{document}

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


Обратите внимание, что эта inner skipопция была введена в KOMA-Script версии 3.17. Так что сверсия 3.15 или 3.16(текущая версия в MiKTeX и TeX Live 2014) вам необходимо использовать

\renewcommand\partheadmidvskip{\vspace{10pt}}

и

\renewcommand\chapterheadmidvskip{\vspace{12pt}}

Вместо этого. Это также работает с версией 3.17 или более новой.

Код:

\documentclass{scrbook}[2015/01/01]
\usepackage{microtype}
% modify part
\setkomafont{part}{\normalfont\bfseries\huge}
\setkomafont{partnumber}{\normalfont\bfseries\Huge}
\renewcommand\partheadmidvskip{\vspace{10pt}}
\renewcommand\partformat{%
  \strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
    \partname~\thepart}%
  \vspace{5pt}\hrule height 3pt%
}
% modify chapter
\KOMAoptions{chapterprefix}
\renewcommand\raggedchapter{\centering}
\setkomafont{chapter}{\normalfont\bfseries\LARGE}
\setkomafont{chapterprefix}{\huge}
\RedeclareSectionCommand[beforeskip=0pt,afterskip=40pt]{chapter}
\renewcommand\chapterheadmidvskip{\vspace{12pt}}
\renewcommand\chapterformat{%
  \hrule height 3pt\vspace{3pt}\hrule height 1pt\vspace{5pt}%
  \mbox{\strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
      \chapapp\nobreakspace\thechapter}}%
  \hrule height 1pt%
}

\usepackage{blindtext}% dummy text
\begin{document}
\tableofcontents
\part{Part title}
\blinddocument
\end{document}


\documentclass{scrbook}
\usepackage{microtype}
% modify part
\setkomafont{part}{\normalfont\bfseries\huge}
\setkomafont{partnumber}{\normalfont\bfseries\Huge}
\renewcommand\partheadmidvskip{\vspace{10pt}}
\renewcommand\partformat{%
  \strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
    \partname~\thepart}%
  \vspace{5pt}\hrule height 3pt%
}
% modify chapter
\KOMAoptions{chapterprefix}
\renewcommand\raggedchapter{\centering}
\setkomafont{chapter}{\normalfont\bfseries\LARGE}
\setkomafont{chapterprefix}{\huge}
\RedeclareSectionCommand[beforeskip=0pt,afterskip=40pt]{chapter}
\renewcommand\chapterheadmidvskip{\vspace{12pt}}
\renewcommand\chapterformat{%
  \hrule height 3pt\vspace{3pt}\hrule height 1pt\vspace{5pt}%
  \mbox{\strut\MakeUppercase{\lsstyle% Upper case sequences should be spaced
      \chapapp\nobreakspace\thechapter}}%
  \hrule height 1pt%
}

\usepackage{blindtext}% dummy text
\begin{document}
\tableofcontents
\part{Part title}
\blinddocument
\end{document}

решение2

AFAIK, KOMA-script имеет , \RedeclareSectionCommandкоторый обеспечивает аналогичный интерфейс titlesec. Обратитесь к руководству, глава 21.

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