Skip to content

ShrekBytes/advanced-pdf-export

Repository files navigation

Advanced PDF Export — Obsidian Plugin

Export Obsidian notes as pixel-perfect PDFs with seven style presets, manual page breaks, full layout control, and a live preview — all from a full-screen modal panel.

Desktop only — requires the Obsidian desktop app (uses Electron's print pipeline).

Main panel with live preview

Table of Contents

Features

  • Live preview — markdown editor on the left, paginated page preview on the right; render with ⟳ Render PDF or Ctrl+Enter
  • Auto-loads active note — opening from the right-click menu or command palette pre-fills the editor (edits are local, non-destructive)
  • Seven style presets — Default, Minimal, Academic, Colorful, Modern, Newspaper, Dark; each fully customisable and resettable
  • Code syntax themes — 10+ themes (GitHub Light/Dark, Dracula, Tokyo Night, Monokai, Catppuccin, and more) applied independently of your Obsidian theme
  • Mermaid diagrams — renders flowcharts, sequence diagrams, and all other Mermaid diagram types
  • Page breaks/// on its own line for a manual break; optionally auto-insert before every H1 or H2
  • Page size & orientation — A4, A3, A5, Letter, Legal, or a fully custom size (mm) × Portrait / Landscape
  • Full layout control — margins, font family/size/line height, paragraph spacing, heading scale, colors, heading borders, striped tables
  • Header & footer — custom text, page numbers (X / Y), alignment, optional separator borders, and first-page suppression

Screenshots

Panel Overview

Panel overview

Page Breaks

Type /// on its own line, or click Insert Page Break in the toolbar.

Page break syntax

Style Presets

Preset dropdown

Academic preset

Modern preset

Colors Setting Panel

Colors Settings

See Settings Reference for the complete list of settings.

Installation

Community Plugins (Recommended)

Search for Advanced PDF Export in Settings → Community Plugins → Browse, then install and enable it.

Manual (GitHub Releases)

  1. Go to the Releases page.
  2. Download main.js, manifest.json, and styles.css from the latest release.
  3. Place them in your vault at .obsidian/plugins/advanced-pdf-export/.
  4. Reload Obsidian and enable the plugin under Settings → Community Plugins.

Usage

Open the panel — right-click any .md file in the file explorer, or use Ctrl/Cmd+PAdvanced PDF Export: Open Panel. The panel opens as a full-screen modal and auto-loads the target note.

Edit markdown — type or paste markdown in the left editor. Changes are not synced back to your vault.

Insert a page break — type /// on its own line, or click Insert Page Break in the topbar. Use --- for a horizontal rule.

Render the preview — click ⟳ Render PDF or press Ctrl+Enter / Cmd+Enter.

Change style or page settings — use the Style, Size, and Orient dropdowns in the topbar. Changes re-render automatically.

Export — click ⬇ Export PDF to open a native save dialog and write the PDF to disk.

Open settings — click the ⚙ icon in the topbar, or go to Settings → Advanced PDF Export.

Settings Reference

All settings take effect after closing the settings panel.

Style Preset

Setting Description
Preset Style theme: Default, Minimal, Academic, Colorful, Modern, Newspaper, Dark
Reset Preset Restores all typographic and color values for the current preset to defaults

Page

Setting Description
Page size A4, A3, A5, Letter, Legal, or Custom
Custom page size Width × Height in mm (visible only when Custom is selected)
Orientation Portrait or Landscape
Margins (Top / Bottom / Left / Right) In mm

Typography

Setting Options
Font family Georgia, Times New Roman, Palatino, Arial, Helvetica, Trebuchet, Courier New, Custom
Custom font name Any CSS font-family value (e.g. Inter, sans-serif); font must be installed on your system
Font size 10 – 16 px
Code font size 0.75em – 1.00em
Line height Tight (1.4) → Double (2.0)
Paragraph spacing None → Wide (1em)
Heading scale 0.8× → 1.2× multiplier applied to all heading sizes

Colors

Setting Description
Accent Primary accent color used for links, borders, and highlights
Body text Main document text color
Headings Color applied to all heading levels
Page background Page background color
Blockquote background Fill color behind blockquote blocks
Blockquote border Left border color on blockquotes
Table header background Background color of table header rows
Code background Background color of inline and fenced code
Code syntax theme Colors fenced code blocks independently of your Obsidian theme. Options: None, GitHub Light, GitHub Dark, Atom One Light/Dark, Monokai, Dracula, Tokyo Night, Solarized Light, Catppuccin Macchiato/Mocha

Heading Style

Setting Description
H1 bottom border Draws a line under every H1
H2 bottom border Draws a subtle line under every H2
Center H1 Centers all H1 headings

Tables

Setting Description
Striped rows Alternating row background on even rows

Header & Footer

Setting Description
Show header Toggle the header on or off
Header text Custom text shown on every page
Header alignment Left, Center, or Right
Header border Separator line below the header
Show footer Toggle the footer on or off
Footer text Custom text shown in the footer
Footer border Separator line above the footer
Show page numbers Toggle Page X / Y display
Page number position Left, Center, or Right
Page number start Number assigned to the first visible page (default 1)
Header/footer on first page When off, page 1 has no header, footer, or page number

Behaviour

Setting Description
Hide frontmatter Strip the YAML frontmatter block (--- … ---) from preview and PDF
Include file name as title Prepends the note's filename as an H1 at the top of the PDF
Auto page break before H1 Inserts a page break before every # heading
Auto page break before H2 Inserts a page break before every ## heading

License

Open source under GPL-3.0 License

About

export obsidian notes as pdf with full control and pixel perfect, page breaks with live preview and more

Topics

Resources

License

Stars

Watchers

Forks

Contributors