Markdown to PDF converter for docs that look good printed
Your notes, README or report are in Markdown and you need a PDF to send, print or attach. Browser printing gives ugly page breaks and cut-off code. Your todo.is agent lays out a proper document with clean fonts, syntax-highlighted code, page numbers and a clickable table of contents.
The prompt
- Turn the attached Markdown into a polished PDF: [ATTACH THE .MD]. Use [LOOK] styling on [PAGE SIZE] with comfortable margins. Add a cover page with the title [TITLE] and today's date, then a clickable table of contents. Highlight code blocks by language and wrap long lines instead of cutting them. Never split a table row or a code block over two pages when it fits on one. Add page numbers in the footer. Keep links clickable. Send the PDF.
What to change
- [ATTACH THE .MD]: Attach the .md file(s) and any images they use, or paste the Markdown.
- [LOOK]: E.g. "clean like GitHub", "serif, like a book" or "our brand colors #0B3D91 and Inter font".
- [PAGE SIZE]: E.g. "A4" or "US Letter".
- [TITLE]: E.g. "API Integration Guide v2" or "use the first heading".
Example result
- Markdown to PDF: guide.md
- 4,100 words · 22 pages · US Letter · clean GitHub-style layout
- Layout
- • Page 1: cover with the title "API Integration Guide v2" and the date
- • Page 2: table of contents, each line links to its section
- • Pages 3 to 22: content with page numbers bottom center and the title in the header
- Typography
- • Body text in a sans-serif at 10.5 pt with 1.45 line height
- • Headings in bold with extra space above, and each ## section can start on a new page if you like
- • Inline code in a monospace font on a light gray background
- Code blocks (12)
- • Syntax highlighting for bash, json, python and javascript, taken from the ```language tag
- • Long lines wrap with a small arrow instead of running off the page
- • Blocks shorter than a page are kept together; one 80-line block was split with "continued" at the top of the next page
- Tables, images and links
- • 5 tables with a header row that repeats when a table runs onto the next page
- • 4 images scaled to fit the text width, with captions from the alt text
- • 31 links stay clickable; external links also show the domain in small text for printed copies
- Checks
- • No heading left alone at the bottom of a page
- • Emoji and special characters render (font fallback used)
- • The PDF is text-based, so it can be searched and copied
- Reply with "start each section on a new page" or "add our logo to the cover" to change it.
How to do it with todo.is
- Copy the prompt and choose the look, page size and title.
- Attach the Markdown and its images in todo.is, or send them to your agent on Telegram or Slack.
- Your agent lays out the PDF and checks page breaks, code and tables.
- Download the PDF. Ask for a Word copy too if someone needs to edit it.
Tips for a better result
- Tag your code blocks with the language (```python). That is how the highlighting knows the colors.
- Add your logo and brand color to the prompt for client-facing documents.
- For a printed handout, ask for black-and-white friendly code colors and visible link URLs.
- Keep the .md as the source. When it changes, send it again and ask for the same layout.
Markdown to PDF converter: FAQ
- How do I convert Markdown to PDF with a table of contents? Ask for one in the prompt. Your agent builds it from your headings, and each line links to its section in the PDF.
- Does the PDF keep syntax highlighting? Yes, when code blocks are tagged with a language. Untagged blocks are shown in monospace without colors.
- Can I use LaTeX math in my Markdown? Simple math written with $...$ can be rendered. For heavy math, say so in the prompt and check the equations in the result.
- Is the PDF searchable? Yes. The text stays real text, so you can search, select and copy it.
JavaScript is required to use the todo.is app.