Word to PDF

Your document is converted in this tab. It is never uploaded anywhere.

Runs locally

Drop files here, or click to choose

Accepts DOCX. No size limit, no sign-up.

Pick a file and this page reads its structure first — columns, text boxes, charts, formulas, and every character it will have to draw — and tells you what will and will not survive. That check runs before anything is converted, and nothing is uploaded at any point.

    What this tool does not do

    • Multi-column layouts are flattened to one column. No text is lost; the visual arrangement is not kept.
    • Text boxes keep their text but not their position — it is emitted inline in document order.
    • Headers and footers are not written yet, page numbers included.
    • Paragraph borders and rules (the line under a heading, for example) are not drawn.
    • Charts and SmartArt are not converted. A chart renderer is a separate graphics engine, and a half-right chart is more dangerous than a blank space.
    • Only PNG and JPEG images are drawn. EMF, WMF, SVG and TIFF are skipped.

    The bundled Chinese font is Noto Sans TC under the SIL Open Font License 1.1. The licence text ships with it. Section 5 of the OFL says in as many words that the requirement to stay under that licence does not apply to documents created with the font — so the PDF you download here carries no licence obligation of its own.Read the font licence

    This page reads your .docx file, lays the text out itself, and writes a PDF — all inside your browser. The result is real vector text you can select, search and copy, not a photograph of a page. Before it converts anything it inspects the file and tells you plainly what will survive and what will not, because a converter that quietly produces a wrong-looking document is worse than one that says no.

    A .docx file is a ZIP archive full of XML, which is why this can run locally

    Rename any .docx to .zip and open it. Inside you will find a folder tree: word/document.xml holds the text and the structure, word/styles.xml holds the named styles, word/numbering.xml describes the bullet and numbering schemes, and word/media/ holds the pictures. There is no proprietary binary blob in the middle. The format has been an open, documented standard (ECMA-376) since 2006.

    That matters because it means converting a Word file does not require Word, or a server running Word, or LibreOffice on a machine somewhere. It requires a ZIP reader and an XML parser, both of which your browser already has, plus code that understands what the tags mean. All of that fits in a few hundred kilobytes of JavaScript and runs on your own processor.

    The old .doc format is genuinely different — it is a binary compound file from the 1990s, with a structure that is far harder to read and largely undocumented in practice. We do not support it. If you have a .doc, open it in Word, Google Docs or LibreOffice and save it as .docx first; every one of them does that in two clicks.

    Why other converters ask you to upload, and why we do not have to

    Most online Word-to-PDF services run LibreOffice on a server. You upload, it opens your document in a full office suite, prints it to PDF, and hands you a download link. That works, and it produces excellent fidelity, but it costs the operator real money for every conversion: a machine has to be running, a queue has to be managed, and your file has to be stored somewhere for at least a few minutes. That cost is exactly why those sites have file size caps, hourly limits, watermarks and paid tiers.

    We measured the alternative. Running LibreOffice locally on our test documents took between 1.9 and 6.6 seconds each. Doing the same conversion in a browser took between 13 and 353 milliseconds — an order of magnitude faster, because there is no upload, no queue, no round trip and no full office suite to start. The trade is fidelity on complicated layouts, which is a real trade and we are specific about it below rather than hiding it.

    The output is also dramatically smaller. A Chinese-language test document came out at 843 KB from LibreOffice and 53 KB here; a real six-page Word file went from 559 KB to 110 KB. The reason is font embedding: a server-side converter typically embeds a large chunk of a CJK font, while we embed only the exact glyphs your document uses.

    Chinese text, and the two bugs that make most browser converters fail at it

    A PDF can only draw a character if the font that draws it is either embedded in the file or one of the fourteen standard fonts every reader has. Those fourteen are Latin-only, so any Chinese in your document needs a real font embedded. We ship a subset of Noto Sans TC covering 6,403 characters — Big5 Level 1, punctuation, bopomofo, full-width forms, box-drawing, circled numbers — as a 1.9 MB file that is fetched only after you pick a document, and only if that document actually needs it. If your file is Latin text, not a byte of it is downloaded.

    Two mistakes are easy to make here and both fail silently. The first is letting the PDF library subset the font: we measured 204 Chinese characters through that path and 158 of them came out as blank space, while the text layer stayed perfectly correct and searchable. Page count, file size and text extraction all looked healthy. We now subset the font ourselves with HarfBuzz and embed the result untouched. The second is the font weight: the variable font we build from defaults to weight 100, which is hairline Thin, so Chinese came out visibly lighter than the English beside it. We pin weight 400, and the check is whether Chinese and Latin on the same page look like the same voice.

    The third problem is subtler. Font choice has to be made per character, not per run of text. A single en dash inside a line like 2022–present is enough to push the whole line into the Chinese font, and the letter spacing changes with it: our first version printed that as 2 0 2 2 present with the dash missing entirely. We now decide character by character, using whether the standard font can actually encode and draw the character rather than a hand-written table of ranges.

    What this converter does well, and where it will let you down

    It handles ordinary documents well: paragraphs and headings, bold, italic, underline and strikethrough, colours, font sizes, bulleted and numbered lists including nesting, tables with borders and shaded header rows, images in PNG and JPEG, superscript and subscript, and page size and margins as set in the document. Résumés, letters, single-page reports, invoices, forms and technical documents are the cases we tested most, and those come out cleanly.

    It will let you down on layout that is not a single column of flowing text. Multi-column sections are flattened to one column — every word survives, the arrangement does not. Text boxes and floating frames keep their text but lose their position, so a caption that sat on top of an image becomes its own paragraph. Headers and footers are not written yet, page numbers included. Paragraph borders, including the rule under a heading, are not drawn. Charts, SmartArt and equations are not converted, and the areas they occupied are left blank rather than filled with something approximate.

    You do not have to guess which of these applies to your file. The moment you choose it, this page reads the structure and lists the specific issues it found — how many columns, how many text boxes, whether there are charts, and which characters in the text have no glyph in the bundled font. That check takes a few milliseconds and happens before anything is converted, so you can decide whether to spend the click.

    What happens to your file, and what the licence means for the PDF

    Nothing is uploaded. Your document is read with the file APIs the browser gives a page, the conversion runs in the same tab, and the PDF is created in memory and handed to you as a download. There is no request carrying your file, so there is nothing to intercept, no retention period to trust and no shareable link that could leak. You can verify this: open developer tools, watch the Network tab, and convert. The security policy this site sends restricts network connections to our own origin, so the browser itself would block an attempt to send your document elsewhere.

    The bundled Chinese font is Noto Sans TC under the SIL Open Font License 1.1, and the licence text ships alongside it. Section 5 of the OFL states in as many words that the requirement to remain under that licence does not apply to documents created using the font. Your PDF therefore carries no licence obligation of its own, even though a subset of the font is embedded inside it.

    One thing we will not claim: this is not PDF/A output, and this page is not an archival-compliance tool. We use the standard PDF fonts for Latin text, and those are not embedded by definition, which alone puts the file outside PDF/A. If you need certified archival PDFs for a records system, you need a tool that can validate its own output, and no such validator exists that runs in a browser.

    Frequently asked questions

    Is my document really not uploaded?

    Really. The conversion is JavaScript and WebAssembly running in your tab. Open the Network tab in developer tools and convert a file — your document appears in no request. The only network activity is fetching the page itself, and the Chinese font if your document contains Chinese.

    Can it convert .doc files?

    No. The old .doc format is a binary compound file, not a ZIP of XML, and it is a different job entirely. Open it in Word, Google Docs or LibreOffice and save as .docx first.

    Will the PDF look exactly like my Word document?

    For a single column of text with headings, lists, tables and images, it comes very close. For multi-column layouts, text boxes, charts, SmartArt or equations, it will not — those are named limitations, and the page tells you which ones apply to your file before it converts anything.

    Why is there a font download?

    Because a PDF can only draw Chinese if a font is embedded in it, and the fourteen fonts every PDF reader has built in are Latin-only. The font is fetched after you choose a file and only when that file needs it. Documents that use rarer characters trigger a larger extended set; about one real Chinese document in five does.

    Is there a file size limit?

    No limit is imposed. The practical ceiling is your device memory, since the document and the PDF are both held in the tab. Documents of a few megabytes are comfortable; a hundred-megabyte file with hundreds of images is not something we have tested.

    Can it convert Japanese or Korean documents?

    No, and it says so rather than producing rubbish. Our bundled font contains no Korean syllables at all, and adding Japanese kana would leave most Japanese-only kanji still missing — a half-rendered page is harder to explain than a clear refusal. If Japanese or Korean is detected, the page tells you before you convert.