Soy principiante en LaTeX y estoy escribiendo documentos informáticos. Elijo cuidadosamente mi paquete algorítmico considerando las características que necesitaba y eso me llevó a elegiralgorithm2e
( vlined
y noend
opciones, prácticamente el único paquete capaz de proporcionar esta combinación única). Mis algoritmos utilizarán palabras clave francesas, pero dudo que eso sea relevante para esta pregunta.
También necesitaré publicar mis documentos en la web. Comencé a buscar herramientas para convertir de LaTeX a HTML, pero ninguna parece admitir el algorithm2e
paquete correctamente (probé htlatex, pandoc y LaTeXML).
¿Existe una herramienta de conversión que convierta LaTeX correctamente (descubrí que pandoc no funciona tan bien con LaTeX normal) Y soporte algorithm2e
?
EDITAR: Un archivo tex de ejemplo de lo que estoy intentando convertir a HTML:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{lmodern}
\usepackage[letterpaper]{geometry}
\usepackage[francais]{babel}
\usepackage[linesnumbered,ruled,vlined,french,onelanguage]{algorithm2e}
\begin{document}
\section{Titre de section}
\subsection{Titre de sous-section}
This section provides a demo algorithm.
\begin{algorithm}
\DontPrintSemicolon
$max \gets a_1$\;
\For{$i \gets 2$ \textbf{to} $n$} {
\If{$a_i > max$} {
$max \gets a_i$\;
}
}
\Return{$max$}\;
\caption{Test}
\label{algo:max}
\end{algorithm}
\end{document}
Respuesta1
La estructura creada por el algoritmo sería bastante difícil de representar HTML
, parece que un enfoque más sensato es convertirla como imagen. Afortunadamente, podemos convertir cualquier fragmento de código en imagen con tex4ht
, utilizando configuraciones simples. Guarde el siguiente código como mycfg.cfg
:
\Preamble{xhtml}
\ConfigureEnv{algorithm}{\Picture*{}}{\EndPicture}{}{}
\Configure{Picture}{.svg}
\begin{document}
\EndPreamble
este es el archivo de configuración para tex4ht
. Los comandos importantes son \ConfigureEnv
, que inserta código antes y después del entorno configurado, algorithm
en nuestro caso. Comando \Picture*{}
... \EndPicture
convierte el contenido adjunto en una imagen. \Configure{Picture}{.svg}
solicita SVG
formato para imágenes, que es el formato preferido para imágenes textuales en estos días.
tex4ht
No sé cómo convertir SVG
de forma predeterminada, debemos usar el archivo de compilación para make4ht
(sistema de compilación para tex4ht
). Guarde el siguiente código como yourtexfilename.mk4
:
if mode=="draft" then
Make:htlatex{}
else
Make:htlatex{}
Make:htlatex{}
Make:htlatex{}
end
Make:image("svg$","dvisvgm -n -p ${page} -c 1.4,1.4 -s ${source} > ${output}")
Este archivo de compilación se utiliza dvisvgm
para la conversión a SVG
. Compilar con:
make4ht -uc mycfg.cfg yourtexfilename.tex
el resultado: