TinyFileLab

Home›PDF›Markdown to PDF

Typeset in your browser — nothing is uploaded

Markdown to PDF

A proper typeset document, not a print-to-PDF of a preview pane. Text stays selectable, links stay clickable, and the file stays small.

Nothing is uploaded. The PDF is assembled in this tab.
Selectable, searchable textWritten as text and vectors, so you can copy from it and your reader can search it.
Tables, code and task listsGFM tables keep their alignment, fenced code gets a mono panel, checkboxes survive.
Links become real linksEvery Markdown link ends up as a clickable annotation in the finished PDF.

What comes out the other end

This is a typesetter, not a screenshot tool. The Markdown is parsed, laid out into pages, and written into a PDF as real text — so the result is selectable, searchable, and a couple of pages of notes come out around 20 KB rather than several megabytes of rasterised image.

Headings get their own sizes and keep their spacing. Bullet and numbered lists indent, and nested lists indent again with a different marker. Tables are drawn with a shaded header row and honour the alignment colons in the separator line. Fenced code blocks get a monospaced face on a tinted panel and wrap rather than run off the edge. Blockquotes get a rule down the left. Links keep their text and become clickable annotations in the PDF, so a reader can follow them from Acrobat or Preview.

The fonts, and the limit that comes with them

Every PDF reader ships with fourteen fonts built in — Helvetica, Times and Courier in their regular, bold, italic and bold-italic forms. This tool uses those, which is why the output has no embedded font data and stays tiny, and why it renders identically in Acrobat, Preview, Chrome and whatever your printer's RIP is running.

The trade is the character set. Those built-in fonts are encoded in WinAnsi, which covers English and Western European text: accented Latin letters, the euro and pound signs, proper dashes and quotes, degrees, plus-minus. It does not cover Greek, Cyrillic, Hebrew, Arabic or any CJK script. If your document is in Chinese or Russian, this is the wrong tool — you need one that embeds a font, and that means a file a hundred times the size.

Images, and why they are not here

Markdown images are written as a path or a URL. A path such as ./diagram.png means a file sitting next to your document, and a page running in your browser has no way to reach it — that is the same sandbox that stops websites reading your disk. A remote URL could in principle be fetched, but then the tool would be sending a request on your behalf, which is exactly what a no-upload tool should not do.

So images are marked in the output as their alt text in italics, in square brackets, in the place they occupied. You can see what was there and where. If the pictures matter more than the privacy, export from your Markdown editor instead; if the text is what matters, this gets you a clean document in one step.

Notes on the settings

Body size drives everything else: headings, code and table text are all scaled from it, so moving 11 pt to 10 pt shrinks the whole document proportionally rather than just the paragraphs. Margins are in millimetres on every page size, including the US ones. Page numbers sit bottom-right and are dropped from the layout entirely when you turn them off, so the text block grows to use the space.

Ticking use the first heading as the document title lifts a leading # Heading out of the body, sets it in large type at the top, writes it into the PDF's title metadata and names the downloaded file after it. Untick it and the heading stays where it was, treated like any other H1.

Common questions

Is my document uploaded anywhere?

No. The Markdown parser and the PDF writer are both JavaScript in this page. Load the page, turn off your network, and it keeps working — which is the only test of that claim worth anything.

Why is the PDF so small?

Because it contains text and a handful of drawing instructions, not pictures of text, and because it uses the fonts already built into every PDF reader instead of embedding its own. A twenty-page report typically lands under 60 KB.

Can it do Chinese, Japanese, Korean, Greek or Cyrillic?

No. The built-in PDF fonts cover Western European characters only, and this tool deliberately does not embed a font. Characters outside that range are written as question marks. For those scripts use a converter that embeds a full Unicode font.

What happens to my images?

They are shown as their alt text in italic square brackets. A page in your browser cannot open a local file path, and fetching a remote URL would mean sending a request on your behalf, which would break the no-upload promise.

Do links still work in the PDF?

Yes. Every Markdown link becomes a real link annotation with the URL attached, so it is clickable in Acrobat, Preview and browser PDF viewers. Autolinks in angle brackets and bare email addresses are handled too.

Can I control page breaks?

Not directly. Content flows and breaks where it runs out of room, with headings kept with the text that follows them. If you need hard page breaks, a horizontal rule at the point you want one is the closest thing available.

What is different about this and the Markdown to HTML tool?

The HTML tool gives you markup to paste somewhere else. This one produces a finished, paginated document with a fixed layout. Same parser underneath, two different destinations.