我正在尝试将 LaTeX 文档转换为 HTML(或者更确切地说,我正在尝试输出 HTML 而不是 PDF - 这是正确的说法吗?)
我使用了https://tex.stackexchange.com/a/39458并尝试写下这个:
htlatex book.tex html "" -dhtml "--interaction=nonstopmode"
这确实很有效,直到我收到以下错误:
System call: copy figs/Correlation_examples.png html.
The syntax of the command is incorrect.
我摆弄了一会儿复制命令,然后意识到问题在于正斜杠(在 Unix 上没有问题)在 Windows 上需要是反斜杠(即,而不是无花果/它需要无花果\)
因此,一方面这应该是一个简单的修复,但另一方面我很难找到要修改哪个文件来进行修复。
我的问题:在 Windows 上,有没有办法在 MiKTeX 上解决这个问题?我认为 htlatex(以及 mk4tex 等)似乎都是编译后的可执行文件,因此我认为自己不可能修改 htlatex.exe(当然,除非重新编译/重建 MikTeX)。
答案1
我没有使用 Windows,也不使用 Miktex,因此无法测试此问题。不过,我认为我可以回答您的一些问题:
htlatex
和类似的脚本不是二进制可执行文件,它们只是批处理脚本,会调用具有特殊配置的 LaTeX 三次tex4ht
,然后调用tex4ht
二进制t4ht
文件,这些二进制文件负责实际的转换和调用命令。您无法从这些脚本中修改文件复制的工作方式。您可以在文件中配置用于图像转换、复制等的命令
tex4ht.env
。它位于texmf-dist/tex4ht/base/win32/tex4ht.env
TeX 发行版根目录中。您可以将此文件复制到您的文档所在的目录中,并找到以下几行:% t4ht -d%%2 Mmove %%1 %%2%%3 Ccopy %%1 %%2%%3
以 开头的行Ccopy
定义了用于文件复制的命令。您可以copy
用一些支持正斜杠的命令替换它,这些命令可以将源文件复制到目标目录的正确子目录中。我希望 Windows 中存在这样的命令。
或者,你可以使用制作4小时,这是
tex4ht
调用的替代命令。即使在 Windows 上,它也应该正确地将文件复制到目标目录。尝试以下命令:make4ht -u -d html book.tex