¿Existe alguna herramienta que pueda convertir documentos Latex en documentos HTML, de modo que todas las matemáticas se presenten conMatemáticasJax?
(Obviamente, es bastante fácil crear un script Perl rápido que sea capaz de realizar una conversión burda, pero estoy interesado en soluciones un poco más sólidas; al menos debería corregir todas las referencias cruzadas automáticamente).
Respuesta1
Actualización 07/2020:
El siguiente código ya no es necesario. TeX4ht ahora tiene soporte total para la salida de MathJax. El equivalente del código siguiente es este:
make4ht filename.tex "mathml,mathjax"
Si desea mantener sus matemáticas LaTeX como texto sin formato, use simplemente:
make4ht filename.tex "mathjax"
make4ht
es un reemplazo htlatex
que convierte a HTML5 y UTF-8 de forma predeterminada, por lo que no son necesarias configuraciones especiales como en la respuesta anterior.
Respuesta original:
Puedes usar TeX4ht
. Puede generar resultados matemáticos que mathml
luego se pueden mostrar con mathjax
. También puede configurar html
el encabezado para cargar mathjax
el script desde 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
Con este archivo de configuración, solicitamos generar las matemáticas como mathml
, luego configuramos html
el encabezado para que el archivo resultante sea html5
. Guárdelo como por ejemplo ht5mjlatex.cfg
y luego llame desde la línea de comando:
htlatex filename.tex "ht5mjlatex.cfg, charset=utf-8" " -cunihtf -utf8"
o puedes usar el de William F. Hammondguion(al final de la página)
Respuesta2
Personalmente preferiría usarpandoc
Para esta tarea, es una solución de un solo paso y, en mi opinión, el resultado es mucho mejor.
Para convertir archivos de un formato de marcado a otro, pandoc es su navaja suiza.
Este comando debería adaptarse a la mayoría de los propósitos:
pandoc document.tex --standalone --mathjax --output document.html
Creará un único archivo HTML con una referencia de JavaScript a mathjax.js. Pandoc está ampliamente documentado yOtros métodos para mostrar matemáticas en HTML.están disponibles.