Skip to main content
PDF to Markdown workspace is empty
CONVERSION TOOL

PDF to Markdown

Convert PDF documentation, books, and articles into clean Markdown (.md) formatted with headings, lists, frontmatter, and code blocks. 100% private in-browser processing.

✓100% Client-Side Privacy — zero server transmission
✓Automatic hierarchy detection for # H1, ## H2, and ### H3
✓One-click clipboard copy and clean .md download

Drag & drop PDF to convert

Select any PDF document. Processed 100% locally in your browser memory.

Client-Side PDF Text Extraction and Markdown (.md) Synthesis

Migrating technical manuals, whitepapers, and documentation out of PDF files into static site generators or Markdown note-taking systems often requires tedious manual reformatting. PDF to Markdown extracts selectable text streams from PDF documents directly inside your web browser and formats them into clean `.md` syntax without uploading files to external servers.

The conversion engine inspects each page's text items, grouping runs into horizontal lines using 2-point vertical `Y` coordinate increments sorted from top to bottom and left to right. When `Auto-Detect Heading Hierarchy` is active, lines with font sizes of `20pt` or larger map to `#` (H1), `15pt` to `19.9pt` map to `##` (H2), and `13pt` to `14.9pt` map to `###` (H3), while inline text runs whose font names contain `bold` or `italic`/`oblique` are wrapped in double-asterisk (`**text**`) and single-asterisk (`*text*`) markers.

Bullet characters (`•`, `-`, `*`) are normalized into `- ` Markdown list items, numbered list prefixes (`1.`, `1)`) are preserved, and excess blank lines are collapsed to clean paragraph breaks. You can prepend a metadata block via `Include YAML Frontmatter`, inspect word and character counts in the `Markdown Content Preview` pane, copy the output with `Copy Markdown`, or save `<filename>.md` via `Download .md File`.

Core Tool Capabilities

  • Font-Size Threshold Heading Detection: Evaluates the transformation matrix font scale of each reconstructed line when `Auto-Detect Heading Hierarchy` is enabled (checked by default). Lines rendered at `20pt` or above are prefixed with `# `, lines at `15pt` or above with `## `, and lines at `13pt` or above with `### `.
  • Inline Bold, Italic, and List Formatting: Inspects PDF font descriptors on body lines to wrap bold runs in `**bold**` and italic or oblique runs in `*italic*` syntax. Lines beginning with bullet symbols (`• `, `- `, `* `) are standardized to `- ` list items, and numbered list lines (`1. ` or `1) `) are retained.
  • YAML Frontmatter and Page Comment Markers: When `Include YAML Frontmatter` is checked (enabled by default), the converter prepends a YAML header block containing `title` (from the file name or PDF Title metadata), `author` and `date` (when `Author` and `CreationDate` exist in the PDF info dictionary), `pages`, and `source`. When unchecked on multi-page PDFs, the output inserts `Page N` HTML comment dividers between pages.
  • Markdown Content Preview and Text Metrics: Review the generated Markdown source inside the read-only monospaced `Markdown Content Preview` panel before exporting. The preview header calculates and displays the exact word count and character count (`<N> words • <M> characters`) of the synthesized `.md` string.
  • One-Click Clipboard Copy and .md Download: Click `Copy Markdown` to write the complete formatted string directly to your system clipboard (confirming with a `Copied to Clipboard!` indicator), or click `Download .md File` to save a UTF-8 `<filename>.md` file named after your original document.
  • Built-In Sample Technical Specification: Test heading classification and frontmatter generation immediately by clicking `Try Sample Document` on the dropzone, which loads a two-page sample technical specification in local browser memory.

Local Browser Privacy

Your files are processed locally on your device. Files are not uploaded, transmitted, or stored on remote servers.

Once the page has loaded, you can disconnect your network connection and continue using this tool offline.

Target Use Cases

  • • Static Site and Documentation Repository Migration
  • • Personal Knowledge Base Ingestion
  • • LLM Context and Prompt Preparation
  • • Editorial Drafting and Content Repurposing

Technical Specifications & Platform Limits

Supported Input Format
Text-Based PDF (.pdf)

Requires selectable PDF text layers. Scanned image-only PDFs require OCR first.

Output Destinations
Markdown File (.md) & System Clipboard

UTF-8 text/markdown download and instant system clipboard copy.

Heading Thresholds
H1 (>=20pt), H2 (>=15pt), H3 (>=13pt)

Configurable via the Auto-Detect Heading Hierarchy checkbox.

Metadata Header
YAML Frontmatter or Page Comments

Extracts Title, Author, CreationDate, and page count when frontmatter is enabled.

Execution Boundary
In-browser processing

All PDF text extraction and Markdown formatting run locally in browser memory.

Step-by-Step Workflow

1

Load a PDF Document

Drag and drop a PDF file into the dropzone, click `Choose PDF File` to browse your device, or click `Try Sample Document`.

2

Configure Markdown Formatting Settings

Under `Markdown Formatting Settings`, toggle `Include YAML Frontmatter` and `Auto-Detect Heading Hierarchy` according to your target documentation structure.

3

Convert and Inspect Preview

Click `Convert to Markdown` to parse the document's text streams and inspect the formatted output, word count, and character count in the `Markdown Content Preview` panel.

4

Download .md File or Copy to Clipboard

Click `Download .md File` to save `<filename>.md` locally, or click `Copy Markdown` to copy the Markdown text directly to your clipboard.

Practical Real-World Use Cases

Static Site and Documentation Repository Migration

Software engineers and technical writers converting legacy PDF guides into `.md` files with YAML frontmatter for Astro, Docusaurus, MkDocs, or GitHub Wiki repositories.

Personal Knowledge Base Ingestion

Researchers and students extracting structured headings, bold key terms, and bulleted notes from digital PDF articles to paste into Obsidian, Logseq, or Notion workspaces.

LLM Context and Prompt Preparation

Developers converting multi-page PDF specifications into plain Markdown text with clear `#`, `##`, and `###` section delimiters before pasting context into language model prompts.

Editorial Drafting and Content Repurposing

Content strategists extracting text and section hierarchies from published PDF whitepapers to draft blog posts and newsletter summaries without retyping.

Frequently Asked Questions

How does the tool determine which lines become H1, H2, or H3 headings?
When `Auto-Detect Heading Hierarchy` is enabled, the engine measures the point size of each text line from its PDF transformation matrix: lines at `20pt` or larger become `# H1`, lines from `15pt` to `19.9pt` become `## H2`, and lines from `13pt` to `14.9pt` become `### H3`. If you uncheck `Auto-Detect Heading Hierarchy`, all lines are formatted as body text and lists with inline `**bold**` and `*italic*` styling.
Are my PDF documents uploaded to a remote server?
No. All PDF text stream parsing, line grouping, and Markdown string synthesis run locally in your web browser memory with no network transmission.
What fields are included when Include YAML Frontmatter is checked?
The YAML frontmatter block includes `title` (derived from the PDF filename or embedded `Title` metadata), `author` and `date` (if `Author` and `CreationDate` fields are present in the PDF document metadata), `pages` (total page count), and `source: "SHRTX PDF Workflows"`. If unchecked on a multi-page PDF, the converter inserts `Page N` HTML comments between pages instead.
How are tables, code blocks, and running headers/footers handled?
The engine reconstructs horizontal text lines using 2-point vertical coordinate buckets and outputs them as linear text paragraphs, headings, and lists. It does not automatically strip running page headers or footers, and it does not synthesize Markdown pipe tables or fenced code blocks. For tabular grid extraction, use the PDF to Excel tool.
Can I convert scanned PDFs that only contain page images?
No. This converter reads selectable glyph items from the PDF text layer and does not run optical character recognition on flat raster scans. For scanned PDFs, use the PDF OCR tool first to extract the text.

Share this tool

Help others discover this utility. No login or registration required.