分页后重新显示章节标题(使用 titlesec)

分页后重新显示章节标题(使用 titlesec)

这是一个后续问题分页后重新显示章节标题。Werner 的答案有效,但在titlesec加载包时无效。是否有其他不冲突的解决方案titlesec

答案1

它几乎相同,但是不需要\patchcmd;只需使用titlesec的设施。

\documentclass{article}
\usepackage[explicit]{titlesec}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage{everyshi}% http://ctan.org/pkg/everyshi
\usepackage{etoolbox}% http://ctan.org/pkg/etoolbox
\makeatletter

\titleformat{name=\section}
  {\normalfont\bfseries\Large}
  {\thesection}
  {1em}
  {\gdef\@section@title@{\thesection\quad#1 (continued)}#1}

\titleformat{name=\section,numberless}
  {\normalfont\bfseries\Large}
  {}
  {0pt}
  {\gdef\@section@title@{#1 (continued)}#1}

\titlespacing{\section}
  {0pt}
  {3ex plus 2ex minus 1ex}
  {1ex plus .5ex minus .5ex}

\let\@section@title@\relax% Sectional heading storage
\def\print@section@title@{%
  {\noindent\normalfont\bfseries\Large\@section@title@}\par\vspace{1ex plus .5ex minus .5ex}%
}
\EveryShipout{%
  \ifdim\pagetotal>\pagegoal% There is content overflow on this page
    \aftergroup\print@section@title@% Reprint/-insert sectional heading
  \fi%
}
\makeatother
\begin{document}
\section{A section}\lipsum[1-6]
\subsection{A subsection}\lipsum[7-14]
\end{document}

的定义\print@section@title@应该重现章节标题的格式。

在此处输入图片描述

相关内容