Posted on 2008-12-05 11:52
ZhouFeng 閱讀(2087)
評論(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}