Formatting Guide

Everything you can do with GrimoirePrint โ€” with live examples.

Headings

Use # symbols for hierarchical headings. Each level gets distinct sizing and styling.

# Document Title ## Section Heading ### Subsection #### Minor Heading
Document Title
Section Heading
Subsection
Minor Heading

Text Formatting

Standard Markdown inline formatting is fully supported.

**Bold text** for emphasis *Italic text* for nuance `inline code` for technical terms --- for horizontal rules

Bold text for emphasis

Italic text for nuance

inline code for technical terms


Lists

Unordered, ordered, and nested lists. Task lists with checkboxes are also supported.

- First item - Second item - Nested item - Another nested 1. Step one 2. Step two 3. Step three - [x] Completed task - [ ] Pending task
  • First item
  • Second item
    • Nested item
    • Another nested
  1. Step one
  2. Step two
  3. Step three
  • โ˜‘ Completed task
  • โ˜ Pending task

Tables

GFM-style tables with column alignment using : in the separator row.

| Feature | Status | Notes | |-----------|:---------:|--------------:| | Tables | โœ… Ready | Full GFM | | Alerts | โœ… Ready | 5 types | | Footnotes | โœ… Ready | Academic |
Feature Status Notes
Tables โœ… Ready Full GFM
Alerts โœ… Ready 5 types
Footnotes โœ… Ready Academic

Code Blocks

Fenced code blocks with syntax highlighting. Specify the language after the opening fence.

```javascript function greet(name) { return `Hello, ${name}!`; } ```
function greet(name) { return `Hello, ${name}!`; }

Images

Embed images with alt text. Images are automatically scaled to fit the page width.

![Alt text](path/to/image.png) ![Caption text](https://example.com/photo.jpg)
๐Ÿ–ผ๏ธ Image renders here
Scaled to page width

Blockquotes

Standard blockquotes with the > prefix. Can be nested.

> This is a blockquote. > It can span multiple lines. > >> Nested blockquotes work too.
This is a blockquote. It can span multiple lines.
Nested blockquotes work too.

Callout Alerts

GFM-style alerts using > [!TYPE]. Five types available.

> [!NOTE] > Useful background information. > [!TIP] > Helpful advice for best results. > [!IMPORTANT] > Critical information users need. > [!WARNING] > Potential issues to watch for. > [!CAUTION] > Dangerous actions to avoid.
Note
Useful background information.
Tip
Helpful advice for best results.
Important
Critical information users need.
Warning
Potential issues to watch for.
Caution
Dangerous actions to avoid.

Footnotes

Academic-style footnotes with automatic numbering and placement at page bottom.

This has a footnote[^1] and another[^2]. [^1]: First footnote content. [^2]: Second footnote text.

This has a footnote1 and another2.

1. First footnote content.

2. Second footnote text.

Highlighted Text

Use double equals signs to highlight important text with a yellow background.

This is ==highlighted text== in a sentence. You can ==highlight multiple words== easily.

This is highlighted text in a sentence.

You can highlight multiple words easily.

Definition Lists

Define terms using the : prefix after the term.

Markdown : A lightweight markup language PDF : Portable Document Format
Markdown
A lightweight markup language
PDF
Portable Document Format

Smart Typography

Automatic conversion of common character sequences into typographically correct symbols.

"Smart quotes" and 'single quotes' Dashes: -- becomes en-dash --- becomes em-dash Ellipsis: ... becomes โ€ฆ Arrows: -> becomes โ†’

“Smart quotes” and ‘single quotes’

Dashes: – (en-dash)

     — (em-dash)

Ellipsis: …

Arrows: →

Page Breaks

Force a new page in the PDF output with an HTML comment.

## Chapter 1 Content for chapter one... <!-- pagebreak --> ## Chapter 2 Content for chapter two...
Chapter 1

Content for chapter one...

โค“ Page Break โค“
Chapter 2

Content for chapter two...

Two-Column Layout

Set the column count in your .mdprint.json config or on the website toolbar.

// .mdprint.json { "columns": 2 } // CLI npx mdprint doc.md --columns 2

Newspaper-style two-column layout

Column Toggle

Switch between 1 and 2 columns mid-document using HTML comments.

# Introduction Single column intro text... <!-- columns: 2 --> ## Details This content flows in two columns... <!-- columns: 1 --> ## Conclusion Back to single column.

Font Presets

Five typography presets available from the toolbar or .mdprint.json.

// .mdprint.json examples: // Professional (default) { "typography": { "bodyFont": "Inter" } } // Academic { "typography": { "bodyFont": "Merriweather" } } // Technical { "typography": { "bodyFont": "Source Sans 3" } } // Literary { "typography": { "bodyFont": "Lora" } } // Minimal { "typography": { "bodyFont": "system-ui" } }
Professional
Clean and modern โ€” Inter + Lora
Academic
Traditional serif โ€” Merriweather
Technical
Clear and precise โ€” Source Sans 3
Literary
Elegant serif โ€” Lora
Minimal
System default โ€” lightweight

Quick Reference

Common syntax at a glance.

Syntax Result
# Heading 1 Top-level heading
## Heading 2 Section heading
**bold** Bold text
*italic* Italic text
`code` Inline code
==highlight== Highlighted
[^1] Footnote reference
- item Bullet list
1. item Numbered list
| a | b | Table row
> quote Blockquote
> [!NOTE] Note callout
> [!TIP] Tip callout
> [!WARNING] Warning callout
> [!CAUTION] Caution callout
> [!IMPORTANT] Important callout
<!-- pagebreak --> Page break in PDF
<!-- columns: 2 --> Switch to 2 columns
--- Horizontal rule
![alt](url) Image
[text](url) Link
๐Ÿ’ก Tip: Use the toolbar on the converter page to quickly switch between font presets, column layouts, and paper sizes without editing your Markdown.