使用 authblk 包时 tex4ht 出现编译错误

使用 authblk 包时 tex4ht 出现编译错误

以下示例取自添加具有不同隶属关系的多名作者并保存为example.tex,可以很好地编译pdflatex example.tex

\documentclass[11pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{authblk}

\title{More than one Author with different Affiliations}
\author[1]{Author A\thanks{[email protected]}}
\author[1]{Author B\thanks{[email protected]}}
\author[1]{Author C\thanks{[email protected]}}
\author[2]{Author D\thanks{[email protected]}}
\author[2]{Author E\thanks{[email protected]}}
\affil[1]{Department of Computer Science, \LaTeX\ University}
\affil[2]{Department of Mechanical Engineering, \LaTeX\ University}

\renewcommand\Authands{ and }

\begin{document}
  \maketitle
\end{document}

mk4ht oolatex example.tex我收到三次错误消息“! \@author 定义中的参数数量非法。“而不是所需的输出文件。

答案1

authblk重新定义了标准 LaTeX 命令,例如\maketitle\author。由于这些命令tex4ht也被重新定义,因此它们相互冲突也就不足为奇了。在这种情况下,修复很容易。将以下代码保存为authblk.4ht

\def\maketitle{\bgroup%
  \AB@maketitle%
\egroup}

\endinput

这修复了\maketitle提供的定义,authblk并且您可以无错误地进行编译。

enter image description here

相关内容