更新 MikTex 后同时使用 algorithmicx、hyperef 和 tex4ht 时出现问题

更新 MikTex 后同时使用 algorithmicx、hyperef 和 tex4ht 时出现问题

我有一些使用 algorithmicx 和 hyperref 的文档,过去 htlatex 可以正确处理这些文档。当我更新 MikTex 安装时,HTML 生成开始出错。我设法将问题简化为以下示例:

\documentclass[10pt,a4paper]{article}

\usepackage{algorithm}
\usepackage{algpseudocode}

\usepackage{hyperref}

\begin{document}

\begin{algorithm}
\caption{Some Algorithm}
\begin{algorithmic}[1]
\Function{Foo}{$A$}
  \ForAll{$a \in A$}
    \State process $a$
  \EndFor
\EndFunction
\end{algorithmic}
\end{algorithm}

\end{document}

当我跑步时

make4ht TestAlgorithmicxWithTex4ht.tex

我收到以下错误:

[STATUS]  make4ht: Conversion started
[STATUS]  make4ht: Input file: TestAlgorithmicxWithTex4ht.tex
[WARNING] tocid: char-def module not found
[WARNING] tocid: cannot fix section id's
This is pdfTeX, Version 3.141592653-2.6-1.40.25 (MiKTeX 23.4) (preloaded format=latex.fmt)
 restricted \write18 enabled.
entering extended mode
[ERROR]   htlatex: Compilation errors in the htlatex run
[ERROR]   htlatex: Filename     Line    Message
[ERROR]   htlatex: ?    855      Undefined control sequence.
[ERROR]   htlatex: ?    12       Undefined control sequence.
[ERROR]   htlatex: ?    13       TeX capacity exceeded, sorry [input stack size=10000].
[FATAL]   make4ht-lib: Fatal error. Command htlatex returned exit code 1

如果我用 注释掉该行\usepackage{hyperref},则make4ht成功完成。在这两种情况下,PDF 生成都可以正常工作,因此问题似乎是 TeX4ht 特有的。

以下是从 MikTex 控制台获取的一些软件包日期:| 软件包 | 日期 | |----------------------|-----------------------| | algorithmics | 2005/5/4 | | hyperref | 2023/2/23 | | miktex-*-bin-x64-2.9 | 2023/4/15 | | make4ht | 2023/3/17 | | tex4ht | 2022/3/12 |

不确定其他版本信息是否相关以及从哪里获取。

相关内容