我是 LaTeX 初學者,正在編寫電腦科學文件。考慮到我需要的功能,我仔細選擇了我的演算法包,這讓我選擇了algorithm2e
(vlined
和noend
選項,幾乎是唯一能夠提供這種獨特組合的軟體包)。我的演算法將使用法語關鍵字,但我懷疑這與這個問題有關。
我還需要在網路上發布我的文件。我已經開始尋找從 LaTeX 轉換為 HTML 的工具,但它們似乎都無法algorithm2e
正確支援該套件(嘗試過 htlatex、pandoc 和 LaTeXML)。
是否有一個轉換工具可以正確轉換 LaTeX(發現 pandoc 對常規 LaTeX 效果不佳)並支援algorithm2e
?
編輯:我試圖轉換為 HTML 的範例 tex 檔案:
\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}
答案1
演算法創建的結構很難在 中表示HTML
,似乎更明智的方法是將其轉換為圖像。幸運的是,我們可以tex4ht
使用簡單的配置將任何程式碼轉換為圖像。將以下程式碼另存為mycfg.cfg
:
\Preamble{xhtml}
\ConfigureEnv{algorithm}{\Picture*{}}{\EndPicture}{}{}
\Configure{Picture}{.svg}
\begin{document}
\EndPreamble
這是 的設定檔tex4ht
。重要的命令是\ConfigureEnv
,它在配置的環境之前和之後插入程式碼,algorithm
在我們的例子中。指令\Picture*{}
...\EndPicture
將包含的內容轉換為圖片。\Configure{Picture}{.svg}
請求SVG
圖像格式,這是當今文字圖片的首選格式。
tex4ht
預設不知道如何轉換為SVG
,我們必須使用建置檔案make4ht
(建置系統tex4ht
)。將以下程式碼另存為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}")
該構建文件用於dvisvgm
轉換為SVG
.編譯:
make4ht -uc mycfg.cfg yourtexfilename.tex
結果: