Text to PDF
Turn plain text into a formatted, downloadable PDF.
This tool runs entirely in your browser. Your data is never uploaded, never stored, and never leaves your device.
Makes a PDF from text: it sets plain text as a printable A4 document, wrapping long lines at the margin and opening new pages as they are needed, so notes, a licence or a pasted email can be handed on as a proper PDF.
How to use it
- 1Paste or type your text — tabs become four spaces and blank lines are kept as blank lines.
- 2Add a title if you want one: it is printed at the top, stored as the PDF's title, and used as the filename (without one you get document.pdf).
- 3Choose Helvetica, Times Roman or Courier and a font size, then Create PDF and download.
Example
- Input
- Title "Meeting Notes" and a paragraph of body text at the default 12pt
- Output
- Meeting Notes.pdf — A4 portrait with the title drawn at 18pt, one and a half times the body size, above the wrapped text
The three built-in PDF fonts are used without embedding, which confines you to Latin script: any word containing an emoji or a CJK character is dropped from the output altogether rather than drawn as a box, while the words around it survive. Font sizes are clamped to 6–32, so entering 40 gives you 32.
What happens to your data
The text you type stays in the browser tab. No draft is sent to a server, stored or logged; the PDF is built locally and passed straight to your downloads.
Last updated August 2026
Someone has asked for it as a PDF. The text itself is nothing much — meeting notes, a licence and its terms, a pasted email, a block of log output for a support ticket — but a .txt attachment gets stripped by mail filters, reflows differently in whatever opens it, and prints however the receiving machine feels like printing it. A PDF fixes the layout, and that is the whole reason the conversion exists.
Before you paste, settle whether what you have is really plain text. What goes in is characters, and what comes out is those characters set in one font, at one size, on A4 pages: no bold, no bullets, no tables, no images. Markdown is not parsed, so asterisks and hashes come through exactly as typed. Tabs are replaced with four spaces, which keeps indented code and nested lists readable but will not hold a column of numbers in line. If the formatting is the point, export from the program that holds it rather than pasting the text out of it.
The second thing to settle is the script your text is written in. The three fonts every PDF reader has built in cover Latin script and little else, so French accents and German umlauts are fine, while Cyrillic, Greek, Chinese, Japanese, Korean and emoji have no representation in them at all. Words containing those characters are counted and left out of the document, and you are told how many went.
The common mistake is expecting a document converter. This is a typesetter for text you already have on the clipboard — nothing is imported, and nothing is interpreted.
How it works
Toolvore builds the file with pdf-lib inside the page itself, and fetches that library — 424 KB of it — only when you press the button, so arriving on the page costs nothing. Each sheet is A4 portrait, 595 × 842 points, with a 56-point margin on all four sides. Wrapping is done by measurement rather than by counting characters: words are added to a line one at a time and the font is asked how wide that line would be at your chosen size, so the break falls at the last word that still fits the 483-point column. Lines are stacked at 1.45 times the font size, and a fresh page opens the moment the next line would drop below the bottom margin. Two limits follow from how that works. A break can only ever happen at a space, so a single word wider than the column — a long URL, a hash, a base64 blob — sits on its own line and runs off the right edge rather than being split. And that same width measurement is what detects unwritable text: a word the font cannot measure is left out of the document rather than drawn as boxes.
Common use cases
- Handing over meeting notes as a document when a .txt attachment will not do
- Turning a pasted email or support thread into one file to attach to a claim
- Getting a licence, a policy or a set of terms into a fixed printable layout
- Putting log output or a config file into a PDF for a ticket or an audit trail
- Making a plain reading copy of a draft to print and mark up by hand
- Producing a PDF whose text can still be searched and copied back out
Frequently asked questions
How do I convert a .txt file into a PDF?+
Open the file in whatever reads it — Notepad, TextEdit, VS Code — select everything and paste it into the text box. There is no file picker here and no drag-and-drop: the input is a box you type or paste into, so the file itself never moves. Worth knowing before you arrive with a folder of them, because there is no batch mode either; each file is a separate paste and a separate download. The other route, if the file is very long or there are many, is your operating system's own print dialogue, which offers Save as PDF from any text editor without the text passing through your clipboard.
Why did some words go missing from my PDF?+
Because they contained characters the font cannot write. Helvetica, Times Roman and Courier, as PDF defines them, use WinAnsi encoding — Western European Latin and a handful of symbols. That is enough for é, ü, ñ and ß, and not enough for Polish ł, Cyrillic, Greek, Hebrew, Chinese, Japanese, Korean or any emoji. Every word is tested before it is drawn, anything unwritable is dropped, and the count plus a sample of the offending characters is shown, so a document never comes back quietly short. If the entire text is outside that set, no file is produced at all. Fixing it properly needs a Unicode font embedded in the PDF, which is megabytes of font data.
Why does a long link run off the edge of the page?+
Because the wrap only breaks at spaces. Each word is measured whole, and if it is already wider than the text column there is nowhere sensible to put it — so it goes on a line of its own and carries on past the right margin, where the page simply ends. Long URLs, API keys, file paths, hashes and base64 strings all behave this way. There are two workarounds, both done before you paste: drop the font size, since the column is a fixed width in points and smaller text fits more characters into it, or insert a space or a line break inside the long string yourself and accept that you have changed the text.
Can I keep bold text, bullet points or markdown formatting?+
No. One font is chosen for the whole document and one size applies to all of the body, so there is no bold, no italic, no coloured text and no way to mark a heading part way down. The only typographic distinction is the optional title, drawn at one and a half times the body size at the top of the first page. Markdown is never parsed, so asterisks, hashes and pipe characters appear as you typed them. A bullet list still reads well if you type the dash or bullet character yourself; what you lose is the hanging indent, because a wrapped line always returns to the left margin.
Will the text in the finished PDF be searchable and selectable?+
Yes. The characters are written into the page as text with a font attached, not painted on as a picture, so a reader's find command locates them and a paragraph can be selected and copied straight back out. That is the practical difference between this and the other common way people get text into a PDF, which is screenshotting it — a screenshot is pixels, and no amount of zooming makes it searchable. It also keeps the file small: the three standard fonts are referenced by name rather than bundled into the document, and there is nothing else in the file beyond the text itself.
Is my text sent anywhere?+
Nowhere. The text sits in the page's state while you type, the PDF is assembled by pdf-lib in the same tab, and the finished bytes are handed to a blob URL that your browser turns into a download — there is no upload step in the code and no server route behind it. The one network request made is for the pdf-lib code itself, and it carries none of your text. Nothing is retained either: close the tab and both the text and the generated file are gone, and building a second PDF releases the first. That matters here, because what gets pasted into a box like this is often a contract clause or a medical letter.
Helvetica, Times Roman or Courier — which should I choose?+
Helvetica for anything read on screen or handed round an office, Times Roman if it will be printed and read at length, and Courier when the text is code, a log or anything where columns need to line up, since it is monospaced and every character takes the same width. Those three are the fonts built into every PDF reader on every platform, which is why they are the options: the file cannot arrive somewhere and have a font substituted under it. Courier is noticeably wider than the other two at the same size, so expect the same paragraph to run to more lines and more pages.
What page size do I get, and can I change the margins?+
A4 portrait, and no. Every page is 595 × 842 points, which is 210 × 297 mm, with a 56-point margin — a shade under 20 mm — on all four sides. There is no US Letter option, no landscape and no control over the margins, so the only lever over how much text fits on a page is the font size, which runs from 6 to 32 and is clamped to that range if you enter something outside it. In practice A4 and Letter are close enough that a page laid out for one prints acceptably on the other, though Letter is the shorter sheet, so anything near the bottom edge is the first thing at risk.
Related tools
PDF to JPG Converter
Turn every page of a PDF into a JPG image, at screen, high or print resolution.
Compress PDF
Reduce a PDF's file size — either losslessly, or by rasterising pages for a much bigger reduction.
Merge PDFs
Combine multiple PDF files into a single document.
Split PDF
Extract selected pages from a PDF into a new file.