Friday, April 29, 2005

There is a cool tool called tex2page which is able to create lovely looking HTML pages from a LaTeX document. After trying it out on one of my LaTeX documents, I thought of the following improvements.

Support for character encodings

I've got documents encoded in ISO-8859-1 using the LaTeX package inputenc. Non-ASCII characters are rendered as ? by tex2page.

Internationalization (I18N)

Text fragments inserted by tex2page are all in English. Unfortunately, some of my documents are written in German. Therefore, it would be much fancier, if tex2page would use "Kapitel" headings instead of "Chapter".

Alternative texts for all internal links

The capabilities of the electronic target media are not completely exploited by tex2page. I would love to see the caption of the target used as alternative text for all document-internal links. When pointing with the mouse on a link "see Figure 42", my browser would display the caption of the referenced figure in a tool-tip window after a while. The same should apply for links into the bibliography and footnotes.

Direct HTML-rendering of (simple) math

All math is rendered as GIF images. Generating these images is a time-consuming process and the rendering in a browser is absolutely sub-optimal. Much better were the generation of native HTML code for at least simple formulas. When using Unicode characters, most of the LaTeX specials should be displayable directly without the need for generating images.

Rendering figures without tables

There seems to be a problem when rendering figures that contain just one centered minipage. Such figures produce tables with two columns. Maybe, a more general approach for minipages using div elements would be better.

Plugins

The tex2page approach is to parse and execute the TeX file through a custom TeX processor. Naturally, this processor does not understand all macros defined in all existing TeX packages. The native TeX implementation of these macros is not useful for generating HTML output. It would be great, if tex2page could be extended with plugins that provide (scheme) implementations for macros defined in LaTeX packages.

Usage of macros defined in additional packages during image generation

If a math environment uses macros provided by additional packages (imported with \usepackage) tex2page reports an error when trying to generate an image for this environment.

XHTML support

The output generated by tex2page seems to be not always well-formed HTML 4. Even greater were XHTML 1.0 as target language.