标题中的井号 # 会导致 htlatex 和 make4ht 出错

标题中的井号 # 会导致 htlatex 和 make4ht 出错

如果我尝试用 排版以下最小工作示例latex,则不会发生任何错误:

\documentclass{article}

\title{\#}
\author{}

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

但是,如果我尝试使用htlatex或进行排版make4ht,就会出现错误

! Illegal parameter number in definition of \:temp.

You can't use `macro parameter character #' in horizontal mode.
Illegal parameter number in definition of \:temp.

分别。

这是什么问题?如何解决?

编辑:看来我可以通过使用latexml(看起来更强大和最新并且产生更好的输出)来简单地避免这个问题,但是我仍然想知道是什么导致了这里的错误以及如何制作htlatexmake4ht工作。

答案1

我将在 TeX4ht 源中处理此问题。与此同时,您可以使用以下配置文件(使用 David 的答案中的技巧):

\Preamble{xhtml}
\DeclareRobustCommand\myhash{\symbol{35}}
\Configure{TITLE+}{\myhash}
\begin{document}
\EndPreamble

\Configure{TITLE+}命令设置<title>标签的内容,因此每次您的标题出现故障时都可以使用它。

结果如下:

<!DOCTYPE html> 
<html lang='en-US' xml:lang='en-US'> 
<head> <title>#</title> 
<meta charset='utf-8' /> 
<meta content='TeX4ht (https://tug.org/tex4ht/)' name='generator' /> 
<meta content='width=device-width,initial-scale=1' name='viewport' /> 
<link href='sample.css' rel='stylesheet' type='text/css' /> 
<meta content='sample.tex' name='src' /> 
</head><body>
   <div class='maketitle'>



<h2 class='titleHead'>#</h2>
<div class='author'></div><br />
<div class='date'><span class='cmr-12'>March 29, 2022</span></div>
   </div>
    
</body> 
</html>

相关内容