MiKTeX 的 tex4ht 提供:

MiKTeX 的 tex4ht 提供:

我正在尝试使用 tex4ht、使用 MiKTeX 的 tex4ht 和 Texmaker 将 LaTeX 文档编译为 HTML。我尝试使用用户命令执行此操作:

C:\MiKTeX\miktex\bin\x64\tex4ht.exe htlatex %.tex

我的文件可以很好地编译为 PDF,但使用此用户命令会出现以下错误:

Process started

---------------------------- tex4ht.c (2010-12-16-08:39 Windows MiKTeX) C:\MiKTeX\miktex\bin\x64\tex4ht.exe htlatex helloworld.tex

--- warning --- Can't find/open file `helloworld.dvi' --- error --- Can't find/open file `helloworld.dvi'

Process exited with error(s)

我使用的文件是一个简单的 Hello World,保存为 helloworld.tex

\documentclass{article}
\begin{document}
Hello World!
\end{document}

我看过这个问题,它说这是一个错误,但应该生成一个文件,但我找不到任何输出。此外,那里建议的代码也给我带来了同样的问题。

最后,我看了tex4ht 故障排除站点其中说应该安装过滤器,但没有说明如何安装。

有人知道这个问题吗?或者能告诉我如何在 miktex 上使用 tex4ht。

编辑:

直接使用 htlatex 可以得到:

C:\test>htlatex test.tex

======================================================================
htlatex: Cannot start MiKTeX package manager.
htlatex: Data: Invalid syntax
======================================================================
htlatex: The Windows command script file could not be found.
htlatex: Data: scripts/tex4ht/htlatex.bat

答案1

tex4ht.exe是后处理器,它接受带有指令dvi的文件tex4ht并将其转换为html文件。您应该tex直接使用htlatex脚本编译文件。


编辑: 如果中没有htlatex.bat脚本miktex,您可以创建新的脚本:

latex %5 \makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode %2.a.b.c.\input  %1
latex %5 \makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode %2.a.b.c.\input  %1
latex %5 \makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCode"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode %2.a.b.c.\input  %1
tex4ht %1  -i/tex4ht/ht-fonts/%3 -ewin32/tex4ht.env
t4ht %1 %4 -ewin32/tex4ht.env

这个脚本来自texlive,我希望它也能与miktex

相关内容