next up previous
Next: Пример для сравнения качества Up: Опыт использования конверторов LaTeX2HTML Previous: Разные способы вставки графики,

Использование конвертора TTH при подготовке математических HTML-статей.

TTH еще один конвертор из TEX в HTML, работающий под ОС UNIX и DOS.

Ниже кратко изложены выводы, которые были сделаны авторами доклада в результате практического использования конвертора. Они могут быть полезны при освоении TTH (для DOS).

Что умеет конвертор:

1. TTH - эмулятор TeX, то есть он читает tex-файл и создает (один) html-файл.

2. TTH использует для матемематических выражений шрифт Symbol и, поэтому, почти не возникает необходимости вставлять формулы в виде GIF-образов.

Пример

3. Он правильно обрабатывает многие LaTeX-овские и TeX-овские конструкции, например, и такие:

\def\MyOnlyFrend{$\log$}
\let\MyFrend\MyOnlyFrend
\newcommand{\Frend}{\MyFrend}
\newcommand{\Frd}{\Frend}
\newenvironment{TheEnd}{Somethings}{Do}

\begin{TheEnd}
\MyOnlyFrend
\MyFrend
\Frd
\end{TheEnd}

4. ТТН может читать *.aux, *.toc, .. файлы и создавать оглавления, ссылки, индекс и пр.

5. Cпециальные команды ТТН позволяют вносить в LaTeX-статью псевдокомментарии, реализовать гипертекстовые возможности HTML:

6. Конвертор успешно обрабатывает рисунки, графические иллюстрации и вставляет их в HTML-статью:

7. ТТH пытается перевести ВСЕ формулы в текст, но, если это получается не слишком хорошо, можно применить маленькую хитрость:

....
%%tth:\begin{picture}
$$ Формулы $$
%%tth:\end{picture}
....
Достоинства TTH:

1. Простота установки.
2. Простота использования.
3. Очень быстрая работа.
4. Математическая HTML-статья понятна и удобна для просмотра.
5. Количество математических конструкций, выраженных символьным соответствием, значительно больше, чем количество текстовых математических конструкций, подготовленных другими конверторами.
Это обстоятельство позволяет сократить результирующий размер HTML-статьи и ускорить процесс ее загрузки на удаленной машине.

Недостатки TTH:

1. Сложная математическая LaTeX-статья не может быть автоматически корректно преобразована в HTML-статью. Требуется доработка статьи (создание недостающих GIF-образов).
Например, большинство конструкций AMSTеXа, встречающихся в LaTeX-статье, будут проигнорированы.
2. Не всегда удовлетворяет качество HTML-статьи.
3. Возможность создания только одного результирующего HTML-файла. Для больших статей это не всегда удобно.
4. Проблемы с руссификацией.

Один из возможных способов решения проблем руссификации:

Дело в том, что математические символы заменяются на буквы (которым в шрифте Symbol соответствуют эти символы).
В процессе перекодировок (из DOS в WINDOWS) символы тоже перекодируются и формулы неузнаваемо искажаются.
Пример
Одно и возможных (но не самых удобных) решений - сначала перекодировать *.tex файлы (а также *.aux *.toc и т.п) в нужную кодировку, а затем запускать tth.
Второй способ - заменить *.html буквы на "числа" типа "& # 205 ;".
Это можно сделать так:
sed -f 1.sed file.html | sed -f 2.sed > file-new.html
sed - это стандартная утилита входящая в состав всех UNIX-ов и доступная почти во всех остальных операционных системах, а 1.sed и 2.sed выглядят примерно так:
1.sed:

 s/<font face=symbol/<font \
 tthReencodeBegin face=symbol/g
 s/<\/font>/&\
 /g

2.sed:
 /^tthReencodeBegin/,/<\/font/ {
 s/tthReencodeBegin//
 s/б/\&#161;/g
 s/в/\&#162;/g
 s/г/\&#163;/g
 .
 .
 .
 }

1.sed вставляет после "font" новую строчку начинающуюся с "tthReencodeBegin" (в вашем тексте это слово не должно встречаться), а 2.sed - делает необходимую замену в строчках между "tthReencodeBegin" и "/font".
В результате получается *.html файл, который можно безболезненно перекодировать.
Пример
К сожалению, современные браузеры не понимают конструкции типа "& # 205 ;", но обратная замена не вызывает затруднений. Ее осуществляет следующий sed-файл:

 s/\&#161;/б/g
 s/\&#162;/в/g
 s/\&#163;/г/g
 s/\&#164;/д/g
 .
 .
 .

Пример
Эту операцию можно возложить на WWW-сервер.