Converter látex em MathJax-HTML

Converter látex em MathJax-HTML

Existe alguma ferramenta que possa converter documentos Latex em documentos HTML, para que toda a matemática seja apresentada comMathJax?

(Obviamente, é bastante fácil hackear um script Perl rápido que seja capaz de fazer uma conversão grosseira, mas estou interessado em soluções um pouco mais robustas - pelo menos ele deve acertar todas as referências cruzadas automaticamente.)

Responder1

Atualização 07/2020:

O código abaixo não é mais necessário. TeX4ht agora tem suporte completo para a saída MathJax. O equivalente ao código abaixo é este:

make4ht filename.tex "mathml,mathjax"

Se você quiser manter sua matemática LaTeX como texto simples, use apenas:

make4ht filename.tex "mathjax"

make4hté o substituto htlatexque converte para HTML5 e UTF-8 por padrão, portanto, nenhuma configuração especial como na resposta antiga é necessária.


Resposta original:

Você pode usar TeX4ht. Ele pode gerar matemática mathmlque pode ser exibida com mathjax. Você também pode configurar htmlo cabeçalho para carregar mathjaxo script de mathjax's cdn:

\Preamble{xhtml,mathml}
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{}
\Configure{@HEAD}{\HCode{<meta charset="UTF-8" />\Hnewline}}
\Configure{@HEAD}{\HCode{<meta name="generator" content="TeX4ht
(http://www.cse.ohio-state.edu/\string~gurari/TeX4ht/)" />\Hnewline}}
\Configure{@HEAD}{\HCode{<link
         rel="stylesheet" type="text/css"
         href="\expandafter\csname aa:CssFile\endcsname" />\Hnewline}}
\Configure{@HEAD}{\HCode{<script type="text/javascript"\Hnewline
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"\Hnewline
></script>\Hnewline}}
\Configure{@HEAD}{\HCode{<style type="text/css">\Hnewline
  .MathJax_MathML {text-indent: 0;}\Hnewline
</style>\Hnewline}}
\begin{document}
\EndPreamble

Com este arquivo de configuração, solicitamos a saída matemática como e mathml, em seguida, configuramos htmlo cabeçalho para que o arquivo resultante seja html5. Salve-o como por exemplo ht5mjlatex.cfge chame na linha de comando:

htlatex filename.tex "ht5mjlatex.cfg, charset=utf-8" " -cunihtf -utf8"

ou você pode usar o de William F. Hammondroteiro(no final da página)

Responder2

Eu pessoalmente preferiria usarpandocpara esta tarefa, é uma solução de uma etapa e o resultado é muito melhor na minha opinião.

Para converter arquivos de um formato de marcação para outro, o pandoc é o seu canivete suíço.

Este comando deve atender à maioria dos propósitos:

pandoc document.tex --standalone --mathjax --output document.html

Ele criará um único arquivo HTML com uma referência javascript para mathjax.js. Pandoc está amplamente documentado eoutros métodos para exibir matemática em HTMLEstão disponíveis.

informação relacionada