Figures and Other Floating Bodies
Author: Luc Maranget

## B.9 Figures and Other Floating Bodies

Figures and tables are put where they appear in source, regardless of their placement arguments. They are outputted inside a `BLOCKQUOTE` element and they are separated from enclosing text by two horizontal rules.

Captions and cross referencing are handled. However captions are not moved at end of figures: instead, they appear where the `\caption` commands occur in source code. The `\suppressfloats` command does nothing and the figure related counters (such as `topnumber`) exist but are useless.

Marginal notes go in the right margin by default.
To get marginal notes in the left margin, use \reversemaginpar.

Marginal notes are handled in an HEVEA specific way. By default, all notes go in the right margin. Issuing `\reversemarginpar` causes the notes to go in the left margin. Unsurprisingly, issuing `\normalmarginpar` reverts to default behaviour.

The `\marginpar` command has an optional argument.

`\marginpar[`left_text`]{`right_text`}`

If optional argument left_text is present and that notes go in the left margin, then left_text is the text of the note. Otherwise, right_text is the text of the note. As a conclusion, marginal notes in HEVEA always go to a fixed side of the page, which side being controlled by the commands `\normalmarginpar` (right side) and `\reversemarginpar` (left side). This departs form LATEX that selects a default side depending on the parity of the page counter.

Marginal notes are styled by the means of two environment style classes (see Section 9.3) : `marginpar` and `marginparside`. The latter `marginparside` takes care of margins and placement as a float, its value is `marginparright` for notes in the right margin and `marginparleft` for notes in the left margin. Users are not expected to alter those. The `marginpar` environment style class governs the general aspect of all marginal notes. Users can control the aspect of all marginal notes by defining a new style class and assigning the `marginpar` environment style class. For instance, to get all marginal notes in red font, and taking 10% of the page width (in place of the default 20%), one can issue the following commands in the document preamble.

    \newstyle{.mynote}{width:10\%; color:red;}
    \setenvclass{marginpar}{mynote}