我似乎htlatex
已经htxelatex
在我的电脑上安装了。但是当我尝试运行它们时,它出现了这样的消息,'I can't write on file 'texput.log''
我正在尝试将 LaTeX 文件转换为 HTML。
这是在 Windows 上,使用 MiKTeX。
答案1
这可能会对你有帮助。我做了一个批处理脚本我使用时使用的htlatex
。您可以将其复制并粘贴到文件中,并使用.bat
扩展名保存,例如html.bat
。
- 你需要打开一个命令提示符,您可以在搜索栏中输入
cmd
,或按下WndLogo + R并写入cmd
以执行命令提示符。命令提示符是一个可以在其中运行不同命令的应用程序。在窗口顶部,您将看到当前目录。例如,C:\Windows\system32\cmd.exe
。您可以检查本教程了解更多信息。 - 然后,您只需使用 移动到文件所在的目录即可
cd path
。例如,如果您的 LaTeX 文档位于C
驱动器中名为 的文件夹中My Latex
,则可以使用 移动到该文件夹cd "C:\My Latex"
。请注意,由于路径上有空格,因此必须用引号括起来。 - 您可以使用 执行脚本
html.bat file.tex
。这将创建一个html
目录,您可以在其中找到文件。(这假设您的文件与您的文件位于同一目录中.tex
。但是,您可以将脚本放在文件夹中,然后将该文件夹添加到您的环境变量。然后你就可以从任何地方调用它了。)- 如果你不想使用脚本,你可以简单地执行
htlatex file.tex html "" -dSomeDir "--interaction=nonstopmode"
。该html
选项设置输出类型,-dSomeDir
设置输出目录SomeDir
(虽然这不是强制性的,但它是一个好主意,因为htlatex
会产生几个文件),并且nonstopmode
告诉编译器如果可以避免就不要停止。
- 如果你不想使用脚本,你可以简单地执行
脚本如下:
@echo off
if [%1]==[] goto usage
set name=%~n1
if exist .\html goto exists
mkdir html
goto process
:exists
echo y | del .\html\*
:process
htlatex %name%.tex html "" -dhtml "--interaction=nonstopmode"
:clean
del %name%.4tc > nul
del %name%.4ct > nul
del %name%.tmp > nul
del %name%.xref > nul
del %name%.idv > nul
del %name%.lg > nul
del %name%.html > nul
del %name%.css > nul
goto end
:usage
echo Usage: %0 file.tex
echo *** Caution *** If there is a html directory it will be deleted.
echo.
:end
答案2
您必须打开命令行窗口。我目前无法访问 Windows 计算机,所以我不知道是否有更好的方法,但我似乎记得,如果您单击“开始”,然后导航到“程序”菜单(执行此操作的方式似乎取决于您的 Windows 版本),然后在“附件”下有“DOS 提示符”或“命令提示符”之类的东西。当命令提示符窗口打开时,您必须更改为包含您的文件的目录(或文件夹)(cd "\Documents And Something\XYZ's Documents\whatever\folder\it\is\in"
),然后运行htlatex myfile.tex
。如果 htlatex 在您的 PATH 中,这将起作用。如果不在,您必须键入 htlatex 的完整路径,例如
"C:\the\full path\to\htlatex.exe" myfile.tex
希望对 Windows 有更多了解的人能够编辑此内容或提供更好的答案。
答案3
- 下面给出 3 个
bat
文件、3 个cfg
文件和 1 个tco
文件。 - 将 *.bat 文件复制到
C:\Program Files\MiKTeX 2.9\scripts\tex4ht\
文件夹。 - 将 *.cfg 文件复制到
C:\Program Files\MiKTeX 2.9\tex\latex\base\cfg\
文件夹。 - 请注意,您可能必须创建文件
tex4ht
夹cfg
。 - 使用 MiKTeX 设置(管理员)和
Refresh FNDB
- 转至
TeXnicCenter
->Build
->Define Output Profiles
->Import
tex4ht.tco
- 将在以下位置创建三 (3) 个新的输出配置文件
TeXnicCenter
LaTeX=>HTML2
和LaTeX=>MathJax
配置文件创建*.html
输出文件:LaTeX=>MathML
配置文件创建*.xml
输出文件。- 请通过合并 pstricks 和 tikz 的代码来改进上述内容。
latex2html.bat
REM @echo off
REM - windows batch file for converting latex to html
cd "%1"
htlatex %2 "html,mathml-"
@echo "Process Ended"
latex2mathjax.bat
REM @echo off
REM - windows batch file for converting latex to html using MathJax
cd "%1"
htlatex %2 "ht5mathjax,charset=utf-8,NoFonts" " -cunihtf -utf8"
@echo "Process Ended"
latex2mathml.bat
REM @echo off
REM - windows batch file for converting latex to xml
cd "%1"
mk4ht mzlatex %2 "html,pmathml,charset=utf-8,NoFonts" " -cunihtf -utf8"
@echo "Process Ended"
ht5mathjax.cfg
\Preamble{xhtml,mathml}
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{}
\Configure{@HEAD}{\HCode{<meta charset="UTF-8" />\Hnewline}}
\Configure{@HEAD}{\HCode{<meta name="generator" content="TeX4ht
(http://www.cse.ohio-state.edu/\string~gurari/TeX4ht/)" />\Hnewline}}
\Configure{@HEAD}{\HCode{<link
rel="stylesheet" type="text/css"
href="\expandafter\csname aa:CssFile\endcsname" />\Hnewline}}
\Configure{@HEAD}{\HCode{<script type="text/javascript"\Hnewline
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"\Hnewline
></script>\Hnewline}}
\Configure{@HEAD}{\HCode{<style type="text/css">\Hnewline
.MathJax_MathML {text-indent: 0;}\Hnewline
</style>\Hnewline}}
\begin{document}
\EndPreamble
% From Michal Hoftich <[email protected]> on 2 Aug 2012
% by email with cc to [email protected]
% Hoftich suggests the name mathjax.cfg
% His suggested command line:
% htlatex 1109.1881v2.tex "ht5mathjax, charset=utf-8,NoFonts" " -cunihtf -utf8"
% to produce html file
% Mods by William F. Hammond
% mk4ht mzlatex $1 "ht5mathjax"
html.cfg
Preamble{xhtml}
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{}
\Configure{@HEAD}{\HCode{<meta charset="UTF-8" />\Hnewline}}
\Configure{@HEAD}{\HCode{<meta name="generator" content="TeX4ht
(http://www.cse.ohio-state.edu/\string~gurari/TeX4ht/)" />\Hnewline}}
\Configure{@HEAD}{\HCode{<link
rel="stylesheet" type="text/css"
href="\expandafter\csname aa:CssFile\endcsname" />\Hnewline}}
\begin{document}
\EndPreamble
xhtml.cfg
\Configure{VERSION}{}
\Configure{DOCTYPE}{\HCode{<!DOCTYPE html>\Hnewline}}
\Configure{HTML}{\HCode{<html>\Hnewline}}{\HCode{\Hnewline</html>}}
\Configure{@HEAD}{}
\Configure{@HEAD}{\HCode{<meta charset="UTF-8" />\Hnewline}}
\Configure{@HEAD}{\HCode{<meta name="generator" content="TeX4ht
(http://www.cse.ohio-state.edu/\string~gurari/TeX4ht/)" />\Hnewline}}
\Configure{@HEAD}{\HCode{<link
rel="stylesheet" type="text/css"
href="\expandafter\csname aa:CssFile\endcsname" />\Hnewline}}
\begin{document}
\EndPreamble
tex4ht.tco
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<txcop:outputProfiles version="2" xmlns:txcop="http://schemas.ToolsCenter.org/TeXnicCenter/OutputProfiles.xsd">
<outputProfileList>
<outputProfile name="LaTeX=>MathJax" stopOnLatexError="false">
<texCommand execute="false" path="" arguments=""/>
<bibTexCommand execute="false" path="" arguments=""/>
<makeIndexCommand execute="false" path="" arguments=""/>
<preProcessors/>
<postProcessors>
<processor name="latex2mathjax" path="latex2mathjax.bat" arguments=""%dm" %nm" inputFile="" outputFile=""/>
</postProcessors>
<viewer path="firefox.exe" closeBeforeCompilation="false">
<viewProjectCommand type="commandLine">
<commandLineCommand path="firefox.exe" arguments="%bm.html"/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewProjectCommand>
<viewCurrentFileCommand type="commandLine">
<commandLineCommand path="firefox.exe" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCurrentFileCommand>
<viewCloseCommand type="commandLine">
<commandLineCommand path="" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCloseCommand>
</viewer>
</outputProfile>
<outputProfile name="LaTeX=>HTML2" stopOnLatexError="false">
<texCommand execute="false" path="" arguments=""/>
<bibTexCommand execute="false" path="" arguments=""/>
<makeIndexCommand execute="false" path="" arguments=""/>
<preProcessors/>
<postProcessors>
<processor name="latex2html batch file" path="latex2html.bat" arguments=""%dm" %nm" inputFile="" outputFile=""/>
</postProcessors>
<viewer path="firefox.exe"" closeBeforeCompilation="false">
<viewProjectCommand type="commandLine">
<commandLineCommand path="firefox.exe"" arguments="%bm.html"/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewProjectCommand>
<viewCurrentFileCommand type="commandLine">
<commandLineCommand path="firefox.exe"" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCurrentFileCommand>
<viewCloseCommand type="commandLine">
<commandLineCommand path="" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCloseCommand>
</viewer>
</outputProfile>
<outputProfile name="LaTeX => MathML" stopOnLatexError="false">
<texCommand execute="false" path="htlatex.exe " arguments="%bm.tex "html,mathplayer""/>
<bibTexCommand execute="false" path="" arguments=""/>
<makeIndexCommand execute="false" path="" arguments=""/>
<preProcessors/>
<postProcessors>
<processor name="latex2mathml" path="latex2mathml.bat" arguments=""%dm" %nm" inputFile="" outputFile=""/>
</postProcessors>
<viewer path="firefox.exe" closeBeforeCompilation="false">
<viewProjectCommand type="commandLine">
<commandLineCommand path="firefox.exe" arguments="%bm.xml"/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewProjectCommand>
<viewCurrentFileCommand type="commandLine">
<commandLineCommand path="firefox.exe" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCurrentFileCommand>
<viewCloseCommand type="commandLine">
<commandLineCommand path="" arguments=""/>
<ddeCommand path="" server="" topic="System" command=""/>
</viewCloseCommand>
</viewer>
</outputProfile>
</outputProfileList>
</txcop:outputProfiles>