> For the complete documentation index, see [llms.txt](https://overleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://overleaf-pro.ayaka.space/latex/zh-cn/ge-shi-hua/15-margin-notes.md).

# 边注

## 引言

本文介绍如何创建页边注，这是一种很受欢迎的脚注替代方案，用于添加补充信息以支持文档的正文。我们还有一个 [帮助页面，介绍 `todonotes` 宏包](/latex/zh-cn/wen-da/04-can-i-add-inline-or-margin-comments-to-the-pdf.md) 它提供了与本文所述不同的替代解决方案。

## \marginpar 命令

无需加载任何额外宏包，你可以使用内置的 LaTeX `\marginpar` 命令为文档添加页边注。该 `\marginpar` 命令的一般形式是

`\marginpar[*left text*]{*right text*}`

其中 `*左侧文本*` 如果页边注出现在文档页面的左侧，就会使用它；而 `*右侧文本*` 如果出现在右侧，则使用它。更具体地说，页边注通常放在页面的“外侧”——不过“外侧”的含义取决于你所使用的文档类以及你是否指定了 `twoside` 宏包选项：

* `book` 类（`\documentclass{book}）` 文档默认是双面的（设计如此）
* `报告` 类（`\documentclass{report}`）和 `article` 类（`\documentclass{article}`）文档默认是单面的。要使其变为双面，你必须指定 `twoside` 选项：
  * `\documentclass[twoside]{report}`，或
  * `\documentclass[twoside]{article}`

对于单面文档，排除从右到左书写的语言（如阿拉伯语）时，“外侧”始终是文本的右边缘；而对于双面文档，左页的外侧是文本的左边缘，右页的外侧是文本的右边缘。

### 反转页边注的位置

命令 `\reversemarginpar` 会反转页边注排版所在的一侧；其效果可以通过命令 `\normalmarginpar`来撤销。正如 LaTeX 源代码文档所述：“这些命令对双栏输出没有效果。”

### 影响页边注排版的命令

页边注的排版 `\marginpar` 会用到若干存储数值的尺寸命令，如有需要，这些数值可以更改：

* `\marginparwidth`：决定页边注的宽度，从而决定页边注中排版的行长度。
* `\marginparsep`：设置页边注与文档正文之间的间隔（距离）。
* `\marginparpush`：定义页边注之间的最小垂直间距。 `\marginpar` 注。

### 更改页边注的排版：右参差和左参差

默认情况下，页边注的文本会在一个盒子中排版，从而生成宽度为 `\marginparwidth`的行。这可能会导致词与词之间出现难看的空隙，因为 TeX 引擎会尝试找到“最佳”的断行位置。你可以使用命令 `\raggedright` 和 `\raggedleft` 来改变文本的排版样式。

### 示例

下面是一个使用若干 `\marginpar` 命令来演示上面列出的一些功能的示例。该示例还加载了 [`geometry`](https://ctan.org/pkg/geometry) 宏包，用于创建较小的页面尺寸，以及 [`hyperref`](https://ctan.org/pkg/hyperref) 宏包，它提供了 `\url` 用于标注文本来源的命令（在脚注中）。

```latex
\documentclass[twoside]{article} % 注意：使用 twoside 选项
\usepackage[a4paper, marginparwidth=75pt, total={10cm, 10cm}]{geometry} % 用于创建较小的页面
\usepackage{hyperref} % 用于使用 \url 命令（在脚注中）
\usepackage{marginnote}
\begin{document}
\section{Lorem Ipsum}
\footnote{来源文本：维基百科（\url{https://en.wikipedia.org/wiki/Lorem_ipsum}）}但我必须向你解释，这种将快乐斥为邪恶、将痛苦颂为美德的错误观念是如何产生的。为此，我将把整个体系完整地讲给你听，并阐述那位伟大的真理探索者、人类幸福的缔造者的真正教义。 \marginpar[注 1：左侧页的文本]{注 1：右侧页的文本，采用两端对齐。} 没有人会因为快乐本身是快乐而拒绝、厌恶或回避它，而是因为那些不知道如何理性追求快乐的人会遭遇极其痛苦的后果。同样，也没有人会因为痛苦本身是痛苦而去爱它、追求它或想要获得它，但有时境况会出现，使辛劳和痛苦能够为他带来某种巨大的快乐。  \marginpar[\raggedright 注 2：左侧页的文本，采用左参差对齐。]{\raggedright 注 2：右侧页的文本，不是两端对齐，而是使用 \texttt{\string\raggedright}。} 举一个微不足道的例子，我们中有谁会从事费力的体力锻炼呢，除非是为了从中获得某种好处？然而，有什么权利去指责一个人选择享受不会带来烦扰后果的快乐，或者指责一个人避开不会产生任何后续快乐的痛苦呢？[33] 另一方面，我们以正当的愤慨谴责并厌恶那些被当下快乐的魅力引诱和堕落、被欲望蒙蔽，以至于看不到必然随之而来的痛苦与麻烦的人；同样，那些因意志薄弱而未尽职责的人也应受同样的责备，这无异于说他们因畏惧辛劳和痛苦而退缩。这些情况都非常简单，也很容易区分。在一个闲暇的时刻，当我们的选择能力不受约束、当没有任何东西阻止我们去做最喜欢做的事时，任何快乐都应受到欢迎，任何痛苦都应被避免。 \marginpar[\raggedleft 注 3：左侧页的文本，不是两端对齐，而是使用 \texttt{\string\raggedleft}]{注 3：左侧页的文本}但在某些情况下，由于职责的要求或事务的义务，常常会出现必须舍弃快乐、接受烦扰的情形。因此，智者在这些事情上始终坚持这样的选择原则：他会舍弃某些快乐，以换取其他更大的快乐；或者忍受痛苦，以避免更糟的痛苦。
\end{document}
```

在 Overleaf 中打开此 `\marginpar` Overleaf 中的示例

此示例会生成如下输出（两页）：

第 1 页：

![\marginpar 命令示例](/files/f79c25e338cf9d33c1fcff2a5c915ff29a7726ca)

第 2 页：

![\marginpar 命令示例](/files/62f7400ed88da895556d73ee575889ce03c92747)

### mparhack 宏包：修正错误的页边

在内部，LaTeX 会将页边注作为文档中的一种“浮动”组件来处理——这类似于 LaTeX 处理浮动图和表格的方式。由于它们是“浮动体”，由 `\marginpar` 生成的页边注有时会出现在错误的页边。 [`mparhack` 宏包](https://mirror.ox.ac.uk/sites/ctan.org/macros/latex/contrib/mparhack/mparhack.pdf) 就是为修正这个问题而编写的，所以如果你遇到这种情况，或许值得使用它。

## 作为 \marginpar 的替代方案：marginnote 宏包

该 [`marginnote` 宏包](https://www.ctan.org/pkg/marginnote) 提供了一个灵活的替代方案，替代 `\marginpar` 命令。 `marginnote` 使用一种非浮动机制来实现页边注，这与 `\marginpar` 的工作方式不同： `marginnote` 它解决了一些问题，但正如其文档所指出的，它也可能引入其他问题。

### 示例

下面的示例演示了 `\marginnote` 命令，由 `marginnote` 宏包的示例代码：

```latex
\documentclass{article}
\usepackage[a5paper, total={3in, 6in}]{geometry} % 用于创建较小的页面
\usepackage{hyperref} % 用于使用 \url 命令（在脚注中）
\usepackage{marginnote}
\begin{document}
\section{Lorem Ipsum}
\footnote{来源文本：维基百科（\url{https://en.wikipedia.org/wiki/Lorem_ipsum}）}但我必须向你解释，这种将快乐斥为邪恶、将痛苦颂为美德的错误观念是如何产生的。为此，我将把整个体系完整地讲给你听，并阐述那位伟大的真理探索者、人类幸福的缔造者的真正教义。 \marginnote{这是另一条页边注，但相对于排版该行的位置，向页面下方移动了 2cm。}[2cm] 没有人会因为快乐本身是快乐而拒绝、厌恶或回避它，而是因为那些不知道如何理性追求快乐的人会遭遇极其痛苦的后果。同样，也没有人会因为痛苦本身是痛苦而去爱它、追求它或想要获得它，但有时境况会出现，使辛劳和痛苦能够为他带来某种巨大的快乐。 \reversemarginpar\marginnote{这是另一条页边注，但相对于排版该行的位置，向页面上方移动了 2cm。它也位于左侧页边。}[-2cm] 举一个微不足道的例子，我们中有谁会从事费力的体力锻炼呢，除非是为了从中获得某种好处？然而，有什么权利去指责一个人选择享受不会带来烦扰后果的快乐，或者指责一个人避开不会产生任何后续快乐的痛苦呢？[33] 另一方面，我们以正当的愤慨谴责并厌恶那些被当下快乐的魅力引诱和堕落、被欲望蒙蔽，以至于看不到必然随之而来的痛苦与麻烦的人；同样，那些因意志薄弱而未尽职责的人也应受同样的责备，这无异于说他们因畏惧辛劳和痛苦而退缩。这些情况都非常简单，也很容易区分。在一个闲暇的时刻，当我们的选择能力不受约束、当没有任何东西阻止我们去做最喜欢做的事时，任何快乐都应受到欢迎，任何痛苦都应被避免。 但在某些情况下，由于职责的要求或事务的义务，常常会出现必须舍弃快乐、接受烦扰的情形。因此，智者在这些事情上始终坚持这样的选择原则：他会舍弃某些快乐，以换取其他更大的快乐；或者忍受痛苦，以避免更糟的痛苦。
\end{document}
```

在 Overleaf 中打开此示例

此示例生成以下输出：

![使用 marginnote 宏包](/files/cccbbfcb349942f201415a08978c26411287c34d)

上面的示例还加载了 `geometry` 宏包，用于创建较小的页面尺寸，以及 `hyperref` 宏包，它提供了 `\url` 用于标注文本来源的命令（在脚注中）。在导入该 `marginnote` 宏包 `\usepackage{marginnote}` 之后，你可以使用 `\marginnote` 命令，正如示例文本中的两个实例所示：

* `\marginnote{这是另一条页边注，但相对于排版该行的位置，向页面下方移动了 2cm。}[2cm]`
* `\marginnote{这是另一条页边注，但相对于排版该行的位置，向页面上方移动了 2cm。它也位于左侧页边。}[-2cm]`

在这些示例中，我们在方括号内使用第二个参数 `[ ]` 它决定相对于使用该命令所在行的垂直对齐方式。第一个 `\margingnote` 命令使用 `[2cm]` 用于将页边注向下移动 2cm *向页面下方*，第二个使用 `[-2cm]` 用于将页边注向下移动 2cm *向页面上方*.

第二个 `\marginnote` 命令在一个 `\reversemarginpar` 被使用后，会使其被放置在这个单面文档的左侧页边：

```latex
\reversemarginpar\marginnote{这是另一条页边注，但相对于排版该行的位置，向页面上方移动了 2cm。它也位于左侧页边。}[-2cm]
```

## 进一步阅读

更多信息请参见

* [该 `marginnote` 包文档](http://www.ctan.org/pkg/marginnote)
* [该 `mparhack` 包文档](http://www.ctan.org/pkg/mparhack)
* [页面大小和页边距](/latex/zh-cn/ge-shi-hua/07-page-size-and-margins.md)
* [脚注](/latex/zh-cn/ge-shi-hua/14-footnotes.md)
* [LaTeX 中的长度](/latex/zh-cn/ge-shi-hua/01-lengths-in-latex.md)
* [单面和双面文档](/latex/zh-cn/ge-shi-hua/08-single-sided-and-double-sided-documents.md)
* [多栏](/latex/zh-cn/ge-shi-hua/09-multiple-columns.md)
* [页眉和页脚](/latex/zh-cn/ge-shi-hua/02-headers-and-footers.md)
* [段落格式](/latex/zh-cn/ge-shi-hua/04-articles-how-to-change-paragraph-spacing-in-latex.md)
* [加粗、斜体和下划线](/latex/zh-cn/latex-ji-chu/03-bold-italics-and-underlining.md)
* [字体大小、字体族和样式](/latex/zh-cn/zi-ti/01-font-sizes-families-and-styles.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://overleaf-pro.ayaka.space/latex/zh-cn/ge-shi-hua/15-margin-notes.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
