LaTeX 文档结构与排版
本章节解决一个文档的「骨架」问题:标题怎么排、章节怎么分、目录怎么生成、页面边距和页眉页脚怎么设置。
这些内容的特点是:设置一次,全文自动生效——这正是 LaTeX 处理长文档的核心优势。
标题、作者与日期
三步走:在导言区声明信息,在正文区调用 \maketitle 渲染。
实例:标题区
\title{论文标题} % 标题(必填,想渲染标题区就必须定义)
\author{张三 \and 李四} % 作者,\and 分隔多位作者
\date{\today} % 日期:\today 自动当天;{} 空参数表示不显示
\begin{document}
\maketitle % 在这里渲染标题区(居中的标题、作者、日期)
\end{document}
| 命令 | 作用 | 常用写法 |
|---|---|---|
| \title{...} | 声明标题 | 标题中可用 \\ 手动换行 |
| \author{...} | 声明作者 | 张三 \and 李四;\thanks 可加脚注注明单位 |
| \date{...} | 声明日期 | \today 当天;固定日期手写;{} 隐藏 |
| \maketitle | 渲染标题区 | 放在正文区开头 |
章节命令与自动编号
章节是结构化文档的基本单位,LaTeX 用一组命令表达层级,编号全部自动。
| 命令 | 层级 | 适用文档类 |
|---|---|---|
| \part{...} | 部分(0 级,编号独立) | article / report / book |
| \chapter{...} | 章(1 级,独立起页) | 仅 report / book |
| \section{...} | 节(article 中的 1 级) | 全部 |
| \subsection{...} | 小节(2 级) | 全部 |
| \subsubsection{...} | 小小节(3 级) | 全部 |
| \paragraph{...} | 带标题的段落(不编号) | 全部 |
两件事最能体现「自动」的价值:一是中间插入新章节,后面编号自动顺延;二是命令加星号(如 \section*{...})表示不编号、不进目录。
实例:章节与脚注
\begin{document}
\section{引言}
这是引言的内容。所有章节的编号都由 LaTeX 自动生成。
\subsection{研究背景}
这里介绍研究背景\footnote{这是一条脚注,编号与排版都是自动的。}。
\subsection{研究意义}
这里说明研究意义。
\section{方法}
\subsection{数据采集}
\subsubsection{样本选择}
层级编号到 subsubsection 为第三层。
\subsection{模型设计}
\section{结论}
\end{document}
编译效果,注意自动生成的编号 1、1.1、2.1.1,以及页面底部的脚注:

\footnote{脚注内容} 在所在位置打上编号,把内容排到本页底部,编号全文档连续。脚注里不要再嵌套 \footnote,那是自找麻烦。
目录生成
目录只需要一个命令:\tableofcontents,它会扫描全文的章节命令,自动生成带页码的目录。
实例:生成目录
\begin{document}
\tableofcontents % 在这里生成目录
\newpage % 目录独占一页,正文从下一页开始
\section{引言}
引言内容。
\subsection{研究背景}
这里介绍研究背景。
\section{方法}
方法内容。
\section{结论}
结论内容。
\end{document}

目录页码靠 .aux 文件传递,所以新增章节后目录不会立刻正确,再编译一遍就好(第 2 篇讲过的老问题)。
想控制目录深度,可在导言区设置:\setcounter{tocdepth}{2} 表示只收录到 subsection;配合 \setcounter{secnumdepth}{2} 可以同时控制正文里编号到第几层。
页面设置:geometry 宏包
页边距、纸张大小这些页面参数,统一交给 geometry 宏包管理。
实例:常用页面设置
\usepackage[a4paper, margin=2.5cm]{geometry}
% 写法二:先加载,再用 \geometry 集中设置(选项多时更清晰)
\usepackage{geometry}
\geometry{
a4paper, % 纸张:A4
margin=2.5cm, % 四边页边距统一 2.5 厘米
includefoot % 页脚算进版心,避免页脚「悬」在页边距外
}
两种写法效果完全相同,任选其一。注意宏包选项永远写在方括号 [ ] 里——把选项写进花括号 { } 是新手高频笔误。
| 选项 | 含义 | 示例 |
|---|---|---|
| margin | 四边统一边距 | margin=2.5cm |
| top / bottom / left / right | 单独控制某一边 | left=3cm, right=3cm |
| a4paper / a5paper / letterpaper | 纸张规格 | a4paper |
| landscape | 横向页面 | 横向幻灯片或宽表 |
| textwidth / textheight | 直接指定版心宽高 | textwidth=15cm |
国内论文常用「奇偶页对称装订」:加 bindingoffset=1cm 可以给装订边额外留出 1 厘米。
页眉页脚:fancyhdr 宏包
fancyhdr 把页眉和页脚各分成左、中、右三个槽位,你想放什么就填什么。
| 命令 | 控制的槽位 |
|---|---|
| \fancyhead[L]{...}(\lhead) | 页眉左侧 |
| \fancyhead[C]{...}(\chead) | 页眉中间 |
| \fancyhead[R]{...}(\rhead) | 页眉右侧 |
| \fancyfoot[L]{...}(\lfoot) | 页脚左侧 |
| \fancyfoot[C]{...}(\cfoot) | 页脚中间 |
| \fancyfoot[R]{...}(\rfoot) | 页脚右侧 |
实例:经典学术页眉页脚
\usepackage[a4paper, margin=2.5cm]{geometry}
\usepackage{fancyhdr}
\pagestyle{fancy} % 启用 fancyhdr 页面风格
\fancyhf{} % 先清空全部槽位,避免残留默认页码
\fancyhead[L]{\nouppercase\leftmark} % 页眉左侧:当前一级章节名
\fancyhead[R]{第 \thepage 页} % 页眉右侧:页码
\fancyfoot[C]{RUNOOB LaTeX 教程} % 页脚中间:自定义文字
\renewcommand{\headrulewidth}{0.4pt} % 页眉下方横线的粗细
\begin{document}
\section{页面布局}
正文内容……
\end{document}
整页效果(页眉左「2 页面布局」右「第 1 页」,页脚中间是自定义文字):

\leftmark 与 \rightmark 是两个「动态书签」,LaTeX 在排版每页时会自动记录当前所在的章节名,写进对应的书签,页眉随之自动更新。
换页与换行控制
段落内换行用 \\(第 3 篇),页面级的中断则有两个命令。
| 命令 | 作用 | 使用建议 |
|---|---|---|
| \newpage | 结束当前页,从新页继续 | 日常换页用这个 |
| \clearpage | 换页并先输出所有未处理的浮动图表 | 章节收尾、文档末尾用它更保险 |
| \linebreak | 在此处强制断行并两端对齐 | 少用,交给自动断行 |
| \pagebreak | 建议在此处换页(可与 \newpage 对比体会) | 少用 |
不要频繁手动 \newpage 去「对齐」页面——让 LaTeX 自动分页,文档改起来才不会全盘错位。手动换页只用于结构性断点,比如目录后、章节间。
小结
| 需求 | 命令 | 所属位置 |
|---|---|---|
| 标题区 | \title、\author、\date + \maketitle | 导言区声明,正文区渲染 |
| 章节 | \section / \subsection / \subsubsection | 正文区 |
| 脚注 | \footnote{...} | 正文区 |
| 目录 | \tableofcontents | 正文区(通常紧跟 \begin{document}) |
| 页面边距 | geometry 宏包 | 导言区 |
| 页眉页脚 | fancyhdr 宏包 | 导言区 |
