Latex 页眉显示每节标题
时间: 2024-10-05 14:04:56 浏览: 29
infocom论文模板 latex
在 LaTeX 中,如果你想要每节标题分别出现在不同的页眉区域,可以利用 `titlesec` 和 `fancyhdr` 包。下面是一个基本的示例:
首先,在 `titlesec` 中为每个部分定义独立的标题格式:
```latex
\usepackage{titlesec}
\titleformat{\section}[runin] % 使用 runin 格式,使得标题紧接文本
{\bfseries\Large\thesection.\quad} % 格式设置(粗体、大号数字加点)
{} % 空白
{0em} % 额外距离
{} % 下面留空
\newcommand{\sectionbreak}{\clearpage\nobreak\bigskip\section*{}}
```
然后在 `fancyhdr` 中为每节设置不同的页眉样式:
```latex
\usepackage{fancyhdr}
\pagestyle{fancy}
% 每节开始前清空页眉
\renewcommand{\sectionmark}[1]{%
\markright{\MakeUppercase{\thechapter.\thesection #1}}%
}
% 设置每一节的头部信息
\fancypagestyle{myChapterStyle}{
\fancyhf{}
\fancyfoot{}
\fancyhead[LO]{\leftmark}
\fancyhead[RO]{\thepage}
\renewcommand{\headrulewidth}{0pt} % 删除顶部横线
}
% 当进入新节时切换页眉样式
\makeatletter
\def\@part[#1]#2{% 或者 \@chapter
\ifnum \c@secnumdepth >\m@ne
\refstepcounter{part}% 或者 chapter
\addcontentsline{toc}{part}{\protect\numberline{\thepart}#1}%
\else
\addcontentsline{toc}{unnumbered}{#1}
\fi
\begingroup
\parindent \z@ \raggedright
\interlinepenalty \@M
\normalfont
\let\thesection\relax
\ifAtBeginDocument
\global\@topnum\z@
\@afterindentfalse
\secdef\@part@start\@part@finish{#2}
\else
\global\@topnum\botone
\@afterindenttrue
\secdef\@part@start\@part@finish{#1\quad #2}
\fi
\endgroup
}
\makeatother
\begin{document}
...
\pagenumbering{arabic} % 如果之前有其他页码格式,需要改回阿拉伯数字
\chapter{第一章}
\thispagestyle{myChapterStyle} % 第一章开始使用自定义样式
\section{第一章节的内容...}
...
\sectionbreak % 每节结束时换到下一页,并清空页眉
...
```
这将使得每章的首页(或节首)显示章标题,而其他页面则显示节标题和页码。
阅读全文