\sectionmark 在书籍 documentclass 和 titlesec 第一页上不起作用

\sectionmark 在书籍 documentclass 和 titlesec 第一页上不起作用

我想请求帮助。

我正在使用双面书籍文档类,并且我有一个很长的章节标题。我的主要问题是如何使标题中的标题变短。它似乎会干扰 titlesec 包(我正在将其用于其他用途)。

我尝试了以下https://texfaq.org/FAQ-runheadtoobig

\documentclass[twoside, a4paper, 12pt]{book}
\usepackage{lipsum}
\usepackage{titlesec}

\titlespacing*{\paragraph}
{0pt}{1ex plus 0ex minus .2ex}{3ex}


\begin{document}
    \chapter{test}
    \paragraph{Test paragraph}
    \lipsum

    \section[This is a loooooooong looooooooooong looooooooooooong title in TOC]{This is a loooooooong looooooooooong looooooooooooong title%
        \sectionmark{This is a loooooooong looooooooo\ldots}}
    \sectionmark{This is a loooooooong looooooooo\ldots}
    \lipsum
    \lipsum
\end{document}

但它不起作用,我仍然在长节的第一页上看到标题。即使是一些自动化的变体,我也很高兴。

谢谢 Libor

答案1

在 和其他标准类中book,部门命令(如)\chapter带有一个可选参数。

\chapter[title for Toc and header]{Main title}

似乎您希望在标题中使用短标题,但在目录和正文中使用长标题。

该类(和memoir的超集)提供两个可选参数,如:bookreport

\chapter[toc-title][head-title]{main-title}
\chapter[toc-and-head-title]{main-title}
\chapter{main-title} % main title used in all three places

同样地\section和其他师级指挥部

也许可以考虑使用该memoir课程。

答案2

\sectionmark只需在前面添加\section

\sectionmark{This is a loooooooong looooooooo\ldots}
\section[This is a loooooooong looooooooooong looooooooooooong title in TOC]{This is a loooooooong looooooooooong looooooooooooong title}
\sectionmark{This is a loooooooong looooooooo\ldots}

相关内容