htlatex 结合多个命令行选项

htlatex 结合多个命令行选项

我使用 htlatex 生成一个 html 文件,命令如下:

htlatex filename.tex "html,1,sections+"

我遇到了输出使用 iso-88859-1 而不是 utf-8 的问题,该问题已解决: 使用 utf-8 编码而不是 iso-8859-1

解决方案是使用以下参数运行命令:

htlatex filename.tex "xhtml,charset=utf-8" "-cmozhtf -utf8"

这使得编码正确显示。但是,我现在似乎无法整合我需要的所有命令行选项。(即 1 和sections+与utf-8相关的选项)。

我尝试在黑暗中拍摄一些变化:

# encoding ends up wrong:
htlatex filename.tex "xhtml,charset=utf-8,1,sections+" "-cmozhtf -utf8"
# sectioning ends up broken:
htlatex filename.tex "xhtml,1,sections+,charset=utf-8" "-cmozhtf -utf8"

显然,我只是在瞎猜。我在这里查看了文档: https://www.tug.org/applications/tex4ht/mn-commands.html#QQ1-9-34.语法应该是:

htlatex filename "options1" "option2" "options3" "options4"

我猜想问题在于我没有正确排序“options1”部分,但我不确定,也找不到更多信息丰富的文档。我正在寻找正确的语法或解决此问题的文档。

答案1

这就是为什么最好使用make4ht而不是 的htlatex原因。我忘了在“-cmozhtf -utf8”之前必须添加空格,否则第一个选项将被忽略,您将得到错误的编码,因为将使用错误的转换表。我认为 和 的输出应该没有任何区别"xhtml,charset=utf-8,1,sections+""xhtml,1,sections+,charset=utf-8"两个版本都是正确的。只有第一个选项很重要,其余的顺序无关紧要。

因此正确的做法htlatex是:

 htlatex sample "xhtml,1,sections+,charset=utf-8" " -cmozhtf -utf8"

使用更简单make4ht

make4ht -u sample.tex "1,sections+"

相关内容