ToolsTray

Star a tool to keep it here.

Markdown to PDF

Markdown to PDF that keeps the text selectable and searchable. A4 pages, an 11pt body, code on a light grey panel, links still clickable.

Runs entirely in your browser — your files and text never leave your device.

Display
Preview

How to use

  1. Paste your Markdown over the sample in the left pane. The preview redraws as you type.
  2. Skim the preview for the parts that usually go wrong in an export: table columns, deeply nested lists, anything you pasted out of a web page.
  3. Press Download PDF. The build runs in a worker and the file arrives as document.pdf.

About this tool

Markdown to PDF is the boring last step of a lot of writing. The notes are finished, and the person waiting on them wants a file they can open and print. Paste your Markdown into the left pane, watch the preview assemble on the right, then press Download PDF. The file lands as document.pdf on A4 with 40pt margins, and the text inside is really text, so a reader can select a line or hit Ctrl+F and find a word.

Structure survives the trip. A single # becomes a 22pt heading and ## an 18pt one, while body copy sits at 11pt with 1.35 line spacing. Fenced code drops into a light grey panel one point smaller than the body. Tables put their header row in bold and repeat it if the table runs onto a second page. Links stay live and blue, clickable from inside the PDF.

One thing to know about the typeface: everything is set in Roboto, the font pdfmake ships with, code panels included. If you want monospaced code, or a document a reviewer can edit, the Markdown to Word tool writes code in Courier New inside a real .docx.

A README handed over as four honest pages

Paste in a project README before a handover call and the preview tells you what the PDF will and will not carry. The three shield badges at the top are images living at URLs, so they will land as their alt text in italics; delete that line before exporting and nobody asks what build passing in slanted grey means.

Everything else makes the trip intact. The install commands sit on their grey panels, the config table splits the width evenly, the deep links stay clickable, and the reviewer can search the result for the flag they care about because the text is real text, not a screenshot of it.

Good to know

  • Images only reach the page if they are inline base64 data URIs in PNG or JPEG form. A picture that points at a URL or a file path comes out as its alt text in italics, because the finished PDF has no way to go and fetch it.
  • Raw HTML is printed rather than rendered. The img and div tags people sprinkle through a README show up literally, tag brackets and all.
  • Code fences get no syntax colouring. The language tag after the backticks is read and then ignored, so a JavaScript block and a YAML block look identical apart from their content.
  • Table columns are split evenly across the 515pt of usable width. A column of prose sitting next to two short number columns wraps harder than you would like.
  • Page size is fixed at A4 portrait. There is no Letter option, no landscape, no margin control, so if US Letter matters, scale it at print time in your PDF viewer.
  • A mermaid fence is still a code fence here, so a diagram prints as its own source on a grey panel rather than being drawn. When the picture must be in the PDF, render it elsewhere, export a PNG, and inline that as a data URI.

Frequently asked questions

Can I copy text out of the finished PDF?

Every glyph is real text drawn by pdfmake, so select-and-copy works and so does search. It also keeps the file small, since there is no picture of the page sitting inside it.

How do I force a page break between sections?

You can't from the Markdown. A --- rule draws a thin horizontal line where it sits rather than starting a fresh page. When a section genuinely has to open on its own page, export it as a separate document.

Do task list checkboxes work?

They print as literal square brackets inside a bullet. The parser is plain markdown-it with linkify turned on and no task-list plugin, so swap the boxes for an x or a dash before exporting if they matter.

Can I upload a .md file instead of pasting?

There is no file picker on this page. Open the .md in whatever editor you wrote it in, select everything, and paste it into the left pane; the preview catches up as soon as you let go.

Missing something in Markdown to PDF? Suggest a feature →

Tell someone who needs this.

LinkedInXWhatsAppEmail