ODT to HTML
Your document never leaves your browser, and nothing is downloaded to make this work. That is worth more here than on most pages: a document is usually the one thing on a computer somebody would mind a stranger reading, and the ordinary way to convert one is to upload it to a company that then has it.
One web page, with the pictures inside it.
The document's structure survives — headings, lists, quotes, tables, emphasis, links — and its pictures are written into the file itself rather than left as references to something inside the original. What comes out is a single file that works anywhere with nothing beside it. The page layout does not survive, and is not meant to: margins and page breaks have no meaning in something that reflows to a phone.
A OpenDocument text document is a ZIP of XML, which is why this needs nothing
Rename a .odt to .zip and open
it: inside is the document as XML, its styles, its relationships and its
pictures as ordinary files. Your browser can already unzip — that is
what DecompressionStream is — and reading XML needs no
library. So the whole job happens here, with nothing fetched and nothing
uploaded.
What takes the work is that emphasis in an OpenDocument file is a style name, and the name is whatever wrote the file chose: pandoc calls an italic style “Emphasis” and LibreOffice calls it “T1”. Matching names would work on the files it was tested against and fail on everybody else's, so the styles are read first and resolved to what they actually declare — font-style italic, font-weight bold.
What does not come across, and why
The page layout, deliberately: margins, page size, headers, footers, page numbers, columns and anything positioned on a page. None of that means anything in a document that reflows to fit a phone. Fonts, colours and sizes go the same way — what is kept is what they were expressing: a heading, a quotation, emphasis, a list.
Three things a OpenDocument text document can hold that do not survive, and you should know before you rely on this: tracked changes, comments and footnotes. A reviewed document converted here comes out as the text with the changes accepted and the discussion gone. If those matter, they have to come out of the original.
It does not open .doc — the pre-2007 Word format, which
is not a ZIP at all but a compound binary document, and a different job
entirely. Save it as .docx first and it will open here. It
does not open .pages, and it will tell you if you hand it a
spreadsheet or a presentation rather than failing silently.
Why there is no ODT to PDF here
Because it is not a conversion, it is typesetting. A PDF fixes text to a page of a particular size with particular margins and particular fonts, and something has to choose all of those and decide where every break falls. Your word processor already does that, with the choices in front of you, and its “export as PDF” is the right tool. A converter that made those decisions silently would have made them for you.
Where to go next
- ODT to TXT — the same document, another way out
- ODT to Markdown — the same document, another way out
- DOCX to HTML — the other format, the same way out