Posted on 2008-12-05 11:52
ZhouFeng 阅读(2021)
评论(0) 编辑 收藏 所属分类:
转载 、
LaTeX
在latex中用自定义页眉页脚, 一般都要使用宏包fancy. 关键是琢磨一下下面的例子, 在看看相应的说明, 一般就可以得到你想要的结果了. 下面的内容主要来自CTEX - 在线文档, 例子部分已经修改过来了, 可以直接编译.
在用 LaTeX 排版文章、书籍时,缺省定义了四种页眉页脚的格式:
empty |
没有页眉和页脚 |
plain |
没有页眉,页脚中部放置页码。 |
headings |
没有页脚,页眉包含章节的标题和页码。 |
myheadings |
没有页脚,页眉页码和使用者所定义的信息。 |
article 缺省使用 plain 格式,而 book 则使用headings 格式。 也可用 \pagestyle 命令在你的文档中设定所用的格式,例如在文档中使用 \pagestyle{empty} 则使得此后的页面没有页眉和页脚。 一般情况下,这四种格式基本可满足排版的要求。但在某些情况下,特别是 使用者想定义自己的页眉和页脚格式时,就会遇到很多限制和麻烦。这时, 使用 fancyhdr 宏包可以很容易地达到目的。
利用 fancyhdr 宏包提供的命令,可以方便的作到:
- 自定义页眉和页脚。
- 为页眉和页脚加上装饰性的横线。
- 页眉和页脚的宽度可以超过正文文本的宽度。
- 多行的页眉和页脚。
- 奇偶页使用不同格式的页眉和页脚。
- 每章的首页使用不同格式的页眉和页脚。
- 浮动对象页使用不同格式的页眉和页脚。
- 控制页眉和页脚的字体,包括字形,字族,大小写等。
简单的例子:
\documentclass{article}
\usepackage{fancyhdr}
\pagestyle{fancy}
\lhead{}
\chead{}
\rhead{\bfseries The performance of new graduates}
\lfoot{From: K. Grant}
\cfoot{To: Dean A. Smith}
\rfoot{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
%......
\begin{document}
......
test!
\end{document}
上面例子中,\thepage 给出了当前页的页码,而 \bfseries 则使 LaTeX 使用粗体字排版页眉。如果想在文档中改用其它形式,比如在第一页不要页眉和页脚,则可在 \begin{document} 和 \maketitle 后使用命令
\thispagestyle{empty}
缺省情况下,\maketitle 命令会自动设置其所在页的格式为 plain 。因此,如果你想在该页使用 fancy 格式的话,应该在 \maketile 后面使用命令 \thispagestyle{fancy}。
下面是一个双面页版式下的例子:
\documentclass{book}
\usepackage{fancyhdr}
\fancyhead{} % clear all fields
\fancyhead[RO,LE]{\bfseries The performance of new graduates} \fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,CE]{From: K. Grant}
\fancyfoot[CO,RE]{To: Dean A. Smith}
\renewcommand{\headrulewidth}{0.4pt} \renewcommand{\footrulewidth}{0.4pt}
\begin{document}
......
test!
\end{document}
这里方括号中字母代表的意义为:
E |
偶数页 |
O |
奇数页 |
L |
页眉或页脚的左边部分 |
C |
页眉或页脚的中间部分 |
R |
页眉或页脚的右边部分 |
H |
页眉 |
F |
页脚 |
在配合 CJK 排版中文文档时,要把带有中文的页眉和页脚的定义用 \begin{CJK}{...}{...} 和 \end{CJK} 括起来。最简单的办法是将其放到 \begin{document} 和 \begin{CJK}{...}{...} 之后。如:
\documentclass{book}
\usepackage{CJK}
\usepackage{fancyhdr}
%......
\begin{document}
\begin{CJK}{GBK}{song}
\pagestyle{fancy}
\fancyhead{} % clear all fields
\fancyhead[RO,LE]{\CJKfamily{hei} \bfseries \LaTeX{} 排版系统}
\fancyhead[LO,RE]{\CJKfamily{hei>} \bfseries \leftmark}
\fancyfoot[LE,RO]{\thepage}
\fancyfoot[LO,RE]{\CJKfamily{kai} 公元二零零零年七月}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
%......
test!
\end{CJK}
\end{document}