> ## Documentation Index
> Fetch the complete documentation index at: https://docs.autype.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Page Layout

> Control page layout with page sections, columns layout, spacers, page breaks, and orientation changes for professional document output.

Autype provides several elements to control how content is positioned on pages in the exported document.

## Page breaks

### Simple page break

A horizontal rule (`---`) is treated as a page break in the rendered document:

```markdown theme={null}
Content on page 1.

---

Content on page 2.
```

### Explicit page break with orientation

Change page orientation with the explicit page break syntax:

```markdown theme={null}
---pagebreak{orientation="landscape"}---
```

```markdown theme={null}
---pagebreak{orientation="portrait"}---
```

This is useful for inserting a landscape page for wide tables or charts, then switching back to portrait.

### Example: Mixed orientations

```markdown theme={null}
# Introduction

Regular portrait content here.

---pagebreak{orientation="landscape"}---

## Wide Data Table

| Col 1 | Col 2 | Col 3 | Col 4 | Col 5 | Col 6 | Col 7 | Col 8 |
|-------|-------|-------|-------|-------|-------|-------|-------|
| Data  | Data  | Data  | Data  | Data  | Data  | Data  | Data  |

---pagebreak{orientation="portrait"}---

## Conclusion

Back to portrait for the conclusion.
```

***

## Page sections

Page sections let you position content at specific vertical locations on a page. This is essential for title pages, certificates, and custom layouts.

### Syntax variant 1: Dash syntax

```markdown theme={null}
---page{align=center}---

# Centered Content

This content is vertically centered on the page.

---/page---
```

### Syntax variant 2: Directive syntax

```markdown theme={null}
:::page{align=center}
# Centered Content

This content is vertically centered on the page.
:::
```

Both syntaxes are equivalent.

### Vertical alignment

| Value    | Description                           |
| -------- | ------------------------------------- |
| `top`    | Content starts at the top of the page |
| `center` | Content is vertically centered        |
| `bottom` | Content is aligned to the bottom      |

### Absolute positioning with startY

Position content at an exact vertical position (in points from the top):

```markdown theme={null}
---page{align=top startY=100}---

Content starting at 100 points from the top.

---/page---
```

### Attribute reference

| Attribute | Values                    | Description                          |
| --------- | ------------------------- | ------------------------------------ |
| `align`   | `top`, `center`, `bottom` | Vertical alignment on the page       |
| `startY`  | Number (points)           | Absolute Y position from top of page |

### Example: Title page

```markdown theme={null}
---page{align=center}---

# Annual Report 2024

## Acme Corporation

*Confidential*

---/page---

---

# Table of Contents

::toc{maxLevel=3}
```

### Example: Certificate

```markdown theme={null}
---page{align=center}---

# Certificate of Completion

This certifies that **{{recipientName}}** has successfully completed the course.

**Date:** {{date/D. MMMM YYYY}}

---/page---
```

***

## Columns layout

Create multi-column layouts similar to LaTeX two-column papers. Content flows automatically from one column to the next.

### Basic two-column layout

```markdown theme={null}
---columns{count=2}---

Content in the first column flows here. When the column is full,
text continues automatically in the second column.

## Section Title

All element types work inside columns — headings, paragraphs, lists, images, tables, math, and more.

---/columns---
```

### Three-column layout

```markdown theme={null}
---columns{count=3 space=0.8}---

Content flows across three columns with 0.8 cm spacing between them.

---/columns---
```

### With separator line

Add a vertical line between columns:

```markdown theme={null}
---columns{count=2 space=1.5 separate=true}---

Left column content here...

Right column content here...

---/columns---
```

### Attribute reference

| Attribute  | Values          | Default | Description                                  |
| ---------- | --------------- | ------- | -------------------------------------------- |
| `count`    | `1`–`4`         | `2`     | Number of columns                            |
| `space`    | Number (cm)     | `1.27`  | Gap between columns                          |
| `separate` | `true`, `false` | `false` | Show vertical separator line between columns |

### Example: Academic paper style

```markdown theme={null}
<h1 align="center">Research Paper Title</h1>

<p align="center">Author Name — Institution</p>

## Abstract

This is a single-column abstract paragraph.

---

---columns{count=2}---

## 1. Introduction

The introduction text flows across two columns, just like a typical academic paper layout.

## 2. Methods

Describe your methodology here. Tables, math blocks, and images all work within the column layout.

$$E = mc^2$$

## 3. Results

| Metric | Value |
|--------|-------|
| Score  | 95.2  |

## 4. Conclusion

Final remarks in two-column format.

---/columns---
```

<Tip>
  Columns are a section-level property — all content between `---columns{...}---` and `---/columns---` flows across the specified number of columns. In PDF/DOCX export, this uses native document column support for accurate rendering.
</Tip>

***

## Spacers

Add vertical spacing between elements:

```markdown theme={null}
---spacer---
```

### Custom height

**Lines** (default unit):

```markdown theme={null}
---spacer{height=2}---
```

This adds 2 lines of vertical space.

**Pixels:**

```markdown theme={null}
---spacer{height="50px"}---
```

This adds exactly 50 pixels of vertical space.

### Height values

| Format           | Description     | Example                     |
| ---------------- | --------------- | --------------------------- |
| Number           | Lines of space  | `height=2` → 2 lines        |
| String with `px` | Pixels of space | `height="50px"` → 50 pixels |
| *(omitted)*      | Default: 1 line | `---spacer---`              |

<Tip>
  Spacers are useful for fine-tuning layout on title pages or between sections where the default paragraph spacing isn't enough.
</Tip>
