Pandoc is the new kid on the block if it comes to processing LaTeX input, and it is very actively developed with a new release every few weeks. (It can handle LaTeX output since its early days). It's available for Windows, and it is recent too...
Pandoc has multiple input formats it can process:
echo $(pandoc --list-input-formats)
commonmark creole docbook docx epub gfm haddock html jats json latex \
markdown markdown_github markdown_mmd markdown_phpextra markdown_strict \
mediawiki muse native odt opml org rst t2t textile tikiwiki twiki vimwiki
Each of these inputs it can convert into the following output formats:
echo $(pandoc --list-output-formats)
asciidoc beamer commonmark context docbook docbook4 docbook5 docx \
dokuwiki dzslides epub epub2 epub3 fb2 gfm haddock html html4 html5 icml \
jats json latex man markdown markdown_github markdown_mmd \
markdown_phpextra markdown_strict mediawiki ms muse native odt \
opendocument opml org plain pptx revealjs rst rtf s5 slideous slidy tei \
texinfo textile zimwiki
The detailed styling of these outputs can be manipulated in appropriate ways for almost every single format: for HTML based outputs (including EPUB or Slidy, DZSlides, Slideous, Reveal.JS and S5 slideshows) you can apply CSS, for ODT or DOCX you can use a reference.docx
or reference.odt
to clone the styles from, for LaTeX you can customize the document template, etc.
The way Pandoc works is very modular: It first reads each input with a specialized Reader component, converts it into its own internal format, native
, and then in turn converts native
to the final output using the appropriate Writer
component.
The Reader component for LaTeX is Text.Pandoc.Readers.LaTeX
. Now here is an extract of the changelog in its recently (Nov 2019) released v2.5 which proofs its active maintenance and development of the relevant component:
Text.Pandoc.Readers.LaTeX
Cleaned up handling of dimension arguments. Allow decimal points, preceding space.
Don’t allow arguments for verbatim, etc.
Allow space before bracketed options.
Allow optional arguments after \ in tables.
Improve parsing of \tiny, \scriptsize, etc. Parse as raw, but know that these font changing commands take no arguments.
I cannot comment on the scope of Pandocs reading support for specialized LaTeX features and environments though. That's up to you to decide and evaluate. Maybe, or even likely, tex4ht
or HaVeA
are still better. But I'm sure you already have a few LaTeX documents at hand which you can put to a test quickly:
pandoc \
--from=latex \
--to=html \
--output=my.html
Or shorter, but with a CSS of your own choice applied:
pandoc \
-f latex \
-t html \
--css=my.css \
--output=my.html