Ширина раздела \chapter с заголовкомsec

Ширина раздела \chapter с заголовкомsec

Я использую titlesecпакет для стилизации команд секционирования. Но у меня проблема с шириной главы или правым полем:

Название главы

Ширина текста должна доходить только до синей линии, «Организация» и «Отображение» должны прерываться. Я знаю \\, что это вариант, но в нижнем колонтитуле также упоминается название главы:

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

Итак, если я использую \\, текст в нижнем колонтитуле будет: «Konzepte für die semantische»…

Стиль:

% > formats: \chapter
\titleformat{\chapter}[display]%
{\usekomafont{chapter}}%
{\vspace{-8em}\raggedleft{%
    {\color{ctcolorchapterline}%
        \rule[-5pt]{2pt}{5cm}}\quad%
    {\color{ctcolorchapternum}
        \fontsize{60}{60}\selectfont\thechapter}%
    }%
}%
{-2.1em}%
{\raggedright}%
[\phantomsection]

решение1

Вы можете использовать explicitопцию titlesec, чтобы поместить заголовок внутрь a \parboxнужной длины; обратите внимание, что теперь вам нужно использовать #1(обычно в последнем обязательном аргументе для \titleformat), чтобы получить заголовок для секционной единицы. Я использовал \textwidth-3emкак ширину для коробки, но вы можете изменить это значение в соответствии с вашими потребностями. В примере ниже я привел некоторые определения для используемых цветов, поскольку они не были указаны в вопросе:

\documentclass{scrbook}
\usepackage{xcolor}
\usepackage[explicit]{titlesec}
\usepackage{lmodern}% just for the example
\usepackage{lipsum}% just for the example
\usepackage{hyperref}

\colorlet{ctcolorchapterline}{cyan}
\colorlet{ctcolorchapternum}{cyan}

\titleformat{\chapter}[display]%
  {\usekomafont{chapter}}%
  {\vspace{-8em}\raggedleft{%
    {\color{ctcolorchapterline}%
        \rule[-5pt]{2pt}{5cm}}\quad%
    {\color{ctcolorchapternum}
        \fontsize{60}{60}\selectfont\thechapter}%
    }%
  }%
  {-2.1em}%
  {\parbox[b]{\dimexpr\textwidth-3em\relax}{\raggedright#1}}%
  [\phantomsection]

\begin{document}

\chapter{A test chapter with a long title that will span two lines}
\lipsum[4]

\end{document}

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

Какэгрегуказал вего комментарий, можно избежать использования explicitопции, используя вспомогательный макрос:

\documentclass{scrbook}
\usepackage{xcolor}
\usepackage{titlesec}
\usepackage{lmodern}% just for the example
\usepackage{lipsum}% just for the example
\usepackage{hyperref}

\colorlet{ctcolorchapterline}{cyan}
\colorlet{ctcolorchapternum}{cyan}

\newcommand\mychapformat[1]{%
  \parbox[b]{\dimexpr\textwidth-3em\relax}{\raggedright#1}}
\titleformat{\chapter}[display]%
  {\usekomafont{chapter}}%
  {\vspace{-8em}\raggedleft{%
    {\color{ctcolorchapterline}%
        \rule[-5pt]{2pt}{5cm}}\quad%
    {\color{ctcolorchapternum}
        \fontsize{60}{60}\selectfont\thechapter}%
    }%
  }%
  {-2.1em}%
  {\mychapformat}%
  [\phantomsection]

\begin{document}

\chapter{A test chapter with a long title that will span two lines}
\lipsum[4]

\end{document}

Я добавил \sectfontк вашим определениям, чтобы вы могли сохранить жирный шрифт sansseerf, используемый по умолчанию в разделах KOMA:

\documentclass{scrbook}
\usepackage{xcolor}
\usepackage{titlesec}
\usepackage{lmodern}% just for the example
\usepackage{lipsum}% just for the example
\usepackage{hyperref}

\colorlet{ctcolorchapterline}{cyan}
\colorlet{ctcolorchapternum}{cyan}

\newcommand\mychapformat[1]{%
  \parbox[b]{\dimexpr\textwidth-3em\relax}{\raggedright#1}}
\titleformat{\chapter}[display]%
  {\usekomafont{chapter}\sectfont}%
  {\vspace{-8em}\raggedleft{%
    {\color{ctcolorchapterline}%
        \rule[-5pt]{2pt}{5cm}}\quad%
    {\color{ctcolorchapternum}
        \fontsize{60}{60}\selectfont\thechapter}%
    }%
  }%
  {-2.1em}%
  {\mychapformat}%
  [\phantomsection]

\begin{document}

\chapter{A test chapter with a long title that will span two lines}
\lipsum[4]

\end{document}

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

Обратите внимание, что titlesecKOMA-Script может быть не полностью совместим (вы получите предупреждение от классов KOMA при загрузке titlesec); см.Несовместимости между KOMA-Script и titlesec

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