Converting HWPX, DOCX, and Markdown without leaving your browser
Moving between HWPX, DOCX, and Markdown can preserve a document’s semantic structure, but it cannot reproduce every editor’s page layout exactly. This guide brings together the five conversion directions, the Markdown ZIP shape, table and image handling, safety limits, and the checks to make afterwards.
The five supported directions
The available paths are HWPX → DOCX, HWPX → Markdown, DOCX → Markdown, Markdown → DOCX, and Markdown → HWPX. Headings, paragraphs, lists, tables, and images move through a shared semantic model and are then written in structures the target format can express.
| Input | Supported output | Status |
|---|---|---|
| HWPX | DOCX, Markdown ZIP | Beta |
| DOCX | Markdown ZIP | Stable |
| Markdown ZIP | DOCX | Stable |
| Markdown ZIP | HWPX | Beta |
What a Markdown ZIP looks like
Markdown input is a Markdown ZIP rather than a lone file. The archive must contain exactly one .md or .markdown document, and images are resolved at paths relative to that document. Exports to Markdown use the same shape so text and assets travel together.
- report.md — the one document to convert
- assets/chart.png — an image referenced as !Quarterly chart
- assets/logo.svg — another image that can live under the same assets/ folder
GFM tables and safe HTML tables
A simple rectangular table is exported as a GFM pipe table. Structures that GFM cannot express, such as merged cells, use a restricted safe HTML table and carry a warning. On import, only allowed table elements and attributes are interpreted; scripts and arbitrary HTML are never executed.
| Source table | Markdown result | What to check |
|---|---|---|
| No merged rows or columns | GFM pipe table | Cell reading order |
| Merged rows or columns | Safe HTML table | Spans and target editor support |
| Unsupported nested object | Visible text or omission | The reported warning |
Image names and images that are not fetched
Images extracted from a document receive collision-free names based on nearby text and their original names, then go under assets/. When importing a Markdown ZIP, the tool uses only relative-path images that actually exist in the archive and whose bytes match a supported image format.
- Duplicate names gain a number, so one image never silently overwrites another.
- A missing or unsupported image keeps its alternative text and produces a warning.
- A remote image at an https: address or a data: URL is not fetched by the browser; only its visible text remains.
Safety limits for files and archives
Everything runs inside the browser, but a compressed document can become far larger when opened. These limits keep a tab responsive and prevent an unexpected archive bomb from being expanded.
| Item | Limit | Behaviour |
|---|---|---|
| Files selected at once | 5 files | Extra files are not accepted |
| Large-file notice begins | Above 50 MiB | You choose whether to continue |
| One input file | 200 MiB | Larger files are rejected |
| Total expanded archive | 1 GiB | Larger archives are rejected |
| Archive entries | 10,000 | More entries are rejected |
| Compression ratio | 200:1 | Over the limit is rejected once an entry exceeds 10 MiB |
Read the warnings, then check the target editor
A result warning says which structure was simplified and what was retained instead. It never exposes raw parser details; it uses information you can act on, such as a file name or format. A successful conversion with warnings deserves a focused check at those locations.
- Files stay on your device and run in a dedicated worker inside the current browser.
- The three paths that read or write HWPX are Beta, so keep the original file.
- Open the download in the target editor and check fonts, page breaks, merged tables, and image order.
Back to PrismMesh