`fancyhdr` 和自动行长

`fancyhdr` 和自动行长

我想创建一个笔记模板,并考虑使用fancyhdr包。到目前为止,我面临两个问题:

[1] 我不需要首页的页眉,只想要页脚

[2] 我希望在页眉和页脚中间有一条居中线,即不显示为下划线,其长度可以根据最左侧和最右侧的条目自动调整。此线不应接触左侧和右侧的条目。

我将提供一个简单的例子。

\documentclass[11pt,a4paper]{article}
\usepackage[utf8x]{inputenc}
\usepackage{fancybox}

\usepackage{lastpage}
 \usepackage{setspace}
\usepackage[left=2.5cm,right=2cm,top=2cm,bottom=2cm]{geometry}
\usepackage{lipsum}

\usepackage{fancyhdr}
\renewcommand{\headrulewidth}{0pt}  


\lhead{Notes on ABC}
\chead{\line(1,0){200}} 
\rhead{\textit{\textcopyright \, Author, \the\year}}   
\lfoot{Chapter 1: A brief introduction in }
\cfoot{\line(1,0){200}}       
\rfoot{Page \thepage \hspace{1pt} of \pageref{LastPage}}

%  Defining the vertical distance in enumeration and itemization
 \usepackage{enumitem}
 \setlist{itemsep=2pt,parsep=2pt,topsep=15pt}


\begin{document}
\pagestyle{fancy}

\vspace{2cm}

\Ovalbox{
\begin{minipage}{0.85\textwidth}
\begin{center}
{\normalsize Notes in ... \\ 
Do not distribute without author's approval.
}
\end{center}
\end{minipage}
}

\vspace{4cm}

\begin{center}
{\Huge \textbf{Chapter 1}} \\ 
{\LARGE \textbf{A Brief Introduction in ... }}
\end{center}

\vspace{0.25cm}

\section{The origins}

\par \lipsum 

\newpage

\section{Another section}

\par Something ...

\end{document}

答案1

这将设置为在文档中使用语义标记\title,例如\chapter等。它进行修补\chapter,以便它不会开始新页面并使用report没有标题页的类。请注意,您的标题偏离了中心。假设这是故意的,我在这里模拟了它。我已经替换了,pagelts因为lastpage一直lastpage在发出警告,告诉你这样做很久了。(我知道,因为我忽略了它们,直到事情也无法编译。)我还调整了,headheight因为fancyhdr抱怨你的页面布局会不一致(而且不管你喜欢与否,它都会改变值)。

\documentclass[11pt,a4paper,notitlepage]{report}
\usepackage[utf8x]{inputenc}
\usepackage{fancybox}
\usepackage{textcomp}
\usepackage{pageslts}
\usepackage{setspace}
\usepackage{titling}
\usepackage{etoolbox}
\usepackage[left=2.5cm,right=2cm,top=2cm,bottom=2cm, headheight=14pt]{geometry}
\usepackage{fancyhdr}
\usepackage{xhfill}
\renewcommand{\headrulewidth}{0pt}
\usepackage{lipsum}



\fancyhf{}
\chead{\parbox{\textwidth}{\thetitle\ \hrulefill\ \textit{\textcopyright\ \theauthor, \the\year}}}
\cfoot{\parbox{\textwidth}{\nouppercase{\leftmark}\ \xrfill[1ex]{.4pt}\ Page \thepage\ of \pageref{LastPage}}}

\fancypagestyle{plain}{%
  \fancyhf{}%
  \cfoot{\parbox{\textwidth}{\nouppercase{\leftmark}\ \xrfill[1ex]{.4pt}\ Page \thepage\ of \pageref{LastPage}}}}

%  Defining the vertical distance in enumeration and itemization
\usepackage{enumitem}
\setlist{itemsep=2pt,parsep=2pt,topsep=15pt}

\pretitle{%
  \vskip 20mm
  \begin{Sbox}%
    \begin{minipage}{.85\textwidth}% off-centre title ??
      \begin{center}%
        \normalsize}
\posttitle{%
      \par
      \end{center}%
    \end{minipage}%
  \end{Sbox}\Ovalbox{\TheSbox}%
  \vskip .5em}
\title{Notes in \dots\\Do not distribute without author's approval.}
\date{}
\author{}

\makeatletter
  \renewcommand \thesection {\@arabic\c@section}
\makeatother

\patchcmd{\chapter}{\clearpage}{\relax}{}{}
\patchcmd{\chapter}{\cleardoublepage}{\relax}{}{}

\begin{document}
  \pagenumbering{arabic}
  \pagestyle{fancy}
  \maketitle\thispagestyle{plain}
  \author{Author}
  \title{Notes on ABC}

  \chapter{A Brief Introduction in \dots }

  \section{The origins}

  \lipsum

  \newpage

  \section{Another section}

  Something ...

\end{document}

我模仿了部分格式,但不是全部。例如,您可能希望更改章节的格式。如果是这样,那么有很多关于这个主题的问题。最重要的是在序言中做这些事情,不是在文档本身中包含明确的标记。

前两页

相关内容