DDanfio

PDF to Word

Turning a PDF into Word is really two different jobs, and most converters blur them. One is getting the words out of the file so you can edit them. The other is recreating the original design - the typefaces, the two-column layout, the table frames, the letterhead. A PDF does not contain a document with styles and paragraphs; it contains characters placed at coordinates, plus the pictures and the vector art. So "exactly like the original, fully editable" is a promise nobody can keep from a PDF alone.

Drag & drop a file here, or .

Everything is processed in your browser - nothing is uploaded.

    One PDF up to 25 MB. It is read in this browser tab and never uploaded - neither the PDF nor the Word file leaves your device.

    Breaks keep the Word pages lined up with the PDF, even though the layout inside them is not recreated.

    Leave blank to name the Word file after the PDF you drop in.

    Only used for the plan below, before a file is chosen. The real job reads the document itself.

    Results update as you type. Nothing leaves your device.

    Plan for a 6-page PDF

    6 pages of text

    Every page's text layer is read in reading order and written into your-file-word.docx as paragraphs, with a Word page break wherever the PDF has one. Fonts, colours, pictures, table borders and margins are not part of a text layer, so they are not recreated - this is an editable document, not a copy of the layout.

    Pages to read
    6 pages
    Page breaks
    One per PDF page
    Format
    Word (.docx)
    Output name
    your-file-word.docx
    The layout does not come across. A PDF text layer is characters with positions, not a document: typefaces, sizes, colours, table frames, pictures and margins are not in it, so the Word file reads as clean paragraphs. A table row arrives as one line of text spaced the way the PDF stored it, and nothing is guessed about headings, lists or columns.
    Scans are refused rather than exported empty. If the pages are pictures - which is what a scanner or a phone photo produces - there is no text layer to read, so the tool says so and suggests OCR instead of handing back an empty document.
    This is PDF to Word only, in that direction. Turning a Word file into a PDF needs a layout engine, which is what Word itself already provides with File > Save as PDF (or Print > Microsoft Print to PDF).
    The PDF is read in this browser tab and the .docx is assembled here too, so nothing is uploaded. A PDF that needs a password is refused rather than guessed at; open it with the password once, save a copy without it, then convert that copy.
    The .docx is a plain OOXML package: US Letter pages, one-inch margins, one paragraph per line and a page break per PDF page. Word, LibreOffice, Google Docs and Pages all open it, and there is no branding or watermark inside it.

    This tool does the first job properly and says so: it reads the text layer of every page, in reading order, and writes it into a real Word document - one paragraph per line, a page break per PDF page - as a genuine .docx package you can edit in Word, Google Docs, LibreOffice or Pages. It runs on your device, so the PDF is never uploaded, and it refuses the one case where it would produce garbage: a scan, which has no text layer at all.

    How this pdf to word works

    What a PDF really contains, and why the words come out in order

    A PDF page is a program, not a paragraph: draw this character with that font at these coordinates, then that picture, then a line. The reading order a human sees is not stored anywhere - it is inferred from the positions. The library used here, pdf.js, walks the content stream and reports each piece of text in the order the page draws it, along with a flag on the last piece of each line.

    That order was measured before this tool was written, on a six-page, two-column sample: 12,833 characters came out in 96 ms, the two columns arrived one after the other rather than interleaved (one switch between columns in 60 checks), and 85 text pieces carried line-end flags that rebuilt 65 lines. So the tool follows the content stream and uses the line-end flags to cut lines. Clustering text by coordinates - the other common approach - would reorder anything deliberately placed off the baseline, like a caption or a margin stamp, and the measurement shows it is not needed.

    The alternative you will see elsewhere, rasterising each page and running OCR, is worse for a document that already has text: it guesses at characters it could have read exactly, it cannot tell a lowercase l from a one, and it turns a searchable file into a picture of one.

    How the Word file is built

    A .docx is a ZIP package holding XML. This tool writes it directly - three parts: the content-type map, the package relationships, and the document body - with a CRC-32 implementation and the browser's own DEFLATE for compression. Nothing is embedded from a template, nothing is fetched, and no dependency touches your text on the way through.

    The document body is deliberately plain, because that is what a text layer supports: one paragraph per line, a page break where the PDF had one, US Letter pages with one-inch margins. Text is escaped for XML and characters XML forbids - a NUL or a form feed from a broken font encoding - are dropped rather than passed on, because Word rejects the whole document over one illegal character. Unicode travels through untouched, including accented letters, CJK, currency symbols and emoji.

    The package is verified before it ships: the unit tests read it back the way a reader does (from the end of the file, through the central directory, checking every offset, size and CRC against Node's own zlib), and the browser suite downloads the finished file and looks inside it. The same construction was checked with .NET's ZipFile and XmlDocument, and the files open in Word without a repair prompt.

    What is refused, and what does not come across

    A scan is refused rather than exported empty. That was measured too: a picture-only sample produced 56 characters of text for six pages - and those were a header that had been drawn on top, not the page content. Real scans produce zero. So the tool counts the text it found, and if there is none, it says the pages have no text layer, suggests OCR, and stops there instead of handing you a Word file that looks like a failure.

    A PDF that needs a password is refused as well, because there is no way to ask for one in a page that never uploads anything; the message points at the unlock tool, which runs in the same tab and can remove the password you know.

    Everything else is honest about its limits. Headings, lists, columns, tables and colours are not detected, because the text layer does not distinguish them: a table row arrives as one line of text with the spacing the PDF stored. Pages with no readable text are listed in the result, so a document that is half scans is obvious rather than silently incomplete. What you get is a clean editable draft of the words, which is what most people actually need - and it takes a second rather than a minute.

    Worked examples

    Each example below was run through the calculator on this page when the site was built, so the numbers match what you see when you enter the same inputs.

    A six-page report, one Word page per PDF page

    Page breaks
    A Word page per PDF page
    Output file name
    q3-report
    Preview: pages in the PDF
    6 pages

    Plan for a 6-page PDF

    6 pages of text

    Every page's text layer is read in reading order and written into q3-report-word.docx as paragraphs, with a Word page break wherever the PDF has one. Fonts, colours, pictures, table borders and margins are not part of a text layer, so they are not recreated - this is an editable document, not a copy of the layout.

    Pages to read
    6 pages
    Page breaks
    One per PDF page
    Format
    Word (.docx)
    Output name
    q3-report-word.docx

    The usual choice for a report or a contract with numbered pages: q3-report-word.docx comes out with the same number of pages as the PDF, so page 4 in Word is page 4 in the original, and the text is editable from the first line.

    A long contract as one flowing document

    Page breaks
    No breaks, one flowing document
    Output file name
    contract
    Preview: pages in the PDF
    48 pages

    Plan for a 48-page PDF

    48 pages of text

    Every page's text layer is read in reading order and written into contract-word.docx as paragraphs, with a Word page break wherever the PDF has one. Fonts, colours, pictures, table borders and margins are not part of a text layer, so they are not recreated - this is an editable document, not a copy of the layout.

    Pages to read
    48 pages
    Page breaks
    None, text runs on
    Format
    Word (.docx)
    Output name
    contract-word.docx

    With the breaks switched off the text runs on, which is what you want when the goal is to search, quote or rewrite rather than to match page numbers - and the Word file reads as one continuous document instead of 48 pages cut at arbitrary points.

    One page of an invoice to edit

    Page breaks
    A Word page per PDF page
    Output file name
    invoice-2026-09
    Preview: pages in the PDF
    1 pages

    Plan for a 1-page PDF

    1 page of text

    Every page's text layer is read in reading order and written into invoice-2026-09-word.docx as paragraphs, with a Word page break wherever the PDF has one. Fonts, colours, pictures, table borders and margins are not part of a text layer, so they are not recreated - this is an editable document, not a copy of the layout.

    Pages to read
    1 page
    Page breaks
    One per PDF page
    Format
    Word (.docx)
    Output name
    invoice-2026-09-word.docx

    A single page converts in well under a second. Line breaks inside the invoice stay as line breaks, so a totals block still reads as a block even though the columns are no longer columns.

    Frequently asked questions

    Is this PDF to Word converter free, with no account and no watermark?

    Yes. There is no sign-up, no email step, no page limit and nothing added by danfio: the Word file holds your text and nothing else. The conversion runs in your browser, so there is no server cost to recover, and the only limits are one PDF per job and 25 MB for that file.

    Will the Word file look exactly like the PDF?

    No, and no converter can honestly promise that. A PDF stores characters at coordinates, not paragraphs with styles, so layout has to be guessed - and guesses are where the horror stories come from: text in the wrong order, tables turned into towers of single words, headings glued to the wrong paragraph. This tool does not guess. It gives you the words in reading order as clean paragraphs, with a page break per page, and leaves the design behind. If you need the design as well, that is a job for the program that made the PDF.

    What happens to tables, columns, images and headers?

    Images and vector art are not copied - they are not text. A table or a two-column layout comes across as the lines of text it was made of, in reading order: a row becomes one line, and a cell boundary becomes the spaces the PDF happened to store. Headers and footers appear where they were drawn, often at the start or end of a page. Nothing is detected as a heading, a list or a cell, because a text layer does not record that.

    Why did my file get refused as a scan?

    Because it has no text layer at all - the pages are pictures, which is what a scanner, a fax or a phone photo produces. There is nothing to convert, so an "export" would hand you an empty Word file. The message says to run OCR first; many scanners and phone apps can do that, and after OCR the same file converts here in a second. A document with a little text is a different case: it converts, and the result warns you when the text is far too thin for the page count, which is the shape of a scan with a header stamped on. Pages with nothing on them are named in the result, so a document that is half scans is obvious rather than silently incomplete.

    Is the download a real .docx, or a file with a .docx name?

    It is a real OOXML package: the same ZIP-plus-XML structure Word writes, with the text as paragraphs and page breaks. Word, Google Docs, LibreOffice and Pages all open it directly, with no repair prompt. It is not HTML renamed to .doc, and it is not a picture of the pages.

    Is my PDF uploaded to convert it?

    No. The file is read with the browser file API, the text layer is read by pdf.js in a worker inside the tab you are looking at, and the .docx is assembled there from the extracted text. Watching the network panel in your developer tools shows the library loading from this site - and no request carrying your document. Once the page is open, the conversion works with the network disconnected.

    Can it convert Word to PDF as well?

    No. That direction needs a layout engine to decide where lines break and pages split, which is exactly what Word itself already has: File > Save as PDF, or Print > Microsoft Print to PDF. Using the program that laid the document out is more accurate than any conversion, and it costs nothing.

    What about a password-protected PDF, and what are the limits?

    A PDF that needs a password is refused with a short explanation, because this tool has no way to ask for one without sending the file somewhere. Open it with the password once and save a copy with the protection removed (the unlock tool here does that in the browser), then convert that copy. The limits are one PDF per job, 25 MB per file, and 2,000 pages in a single run.

    Assumptions and sources

    • Text extraction: pdf.js 6.3.289 (Apache-2.0) runs inside your browser, in a worker loaded from this site. The text layer is read in content-stream order with the library's own line-end flags; nothing is re-typed, spell-checked, or sent anywhere.
    • Measured before building: a six-page, two-column sample yielded 12,833 characters in 96 ms, in reading order (60 column checks, one cross-column switch), with 85 text pieces rebuilding 65 lines - the rule this tool uses. A picture-only sample yielded 56 characters, and those were a header drawn on top, which is why a document with no text at all is refused (with an OCR suggestion) and a document with that little text is converted with a warning instead.
    • The .docx writer is hand-written here (ZIP with CRC-32 and DEFLATE, three OOXML parts) rather than a dependency; the packages were read back with .NET's ZipFile and XmlDocument, and the unit tests check every offset, size and CRC against Node's own zlib. Unicode codepoints (U+00DC, U+65E5, U+20AC, U+2713, U+2014) survive the round trip, and characters XML 1.0 forbids are dropped instead of writing a file Word would refuse.
    • Not detected on purpose: headings, lists, columns, tables, colours and images. A PDF text layer has no notion of them, and guessing produces the scrambled output people complain about.
    • Privacy: no file, file name or page text is sent to danfio.com. There is no upload endpoint behind this tool, and the download is a Blob held in your own tab.

    Last reviewed 2026-09-14. This page is an estimate tool, not financial, tax or legal advice.Read the full disclaimer.