这是由htlatex生成的HTML。当我使用Mathjax时,HTML中没有数学,显示完全不同。 MathJax在HTML主体的文本周围添加了一个框架。
当我删除MathJax时,框架消失了。
这是HTML
<!DOCTYPE html>
<html>
<head> <title></title>
<meta charset="UTF-8" />
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head>
<body>
     this is verbatim
 <br />    \begin{foo}
 <br />         test
 <br />    \end{foo}
 <br />  
</body>
</html>
这是firefox上的屏幕输出:
现在,当我从HTML头中删除MathJax时,这就是输出:
<!DOCTYPE html>
<html>
<head> <title></title>
<meta charset="UTF-8" />
</head>
<body>
     this is verbatim
 <br />    \begin{foo}
 <br />         test
 <br />    \end{foo}
 <br />  
</body>
</html>
,HTML看起来像
Fyi,用于生成上述HTML的原始乳胶文件foo.tex
是
\documentclass[]{article}
\begin{document}
\begin{verbatim}
this is verbatim
\begin{foo}
test
\end{foo}
\end{verbatim}
\end{document}
使用命令
编译htlatex foo.tex "t.cfg"
其中t.cfg
是
\Preamble{}
\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{<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
问题为什么加载Mathjax导致在显示的文本周围放置一个框架并将其置于页面中间?
答案 0 :(得分:3)
我也意识到我实际上没有回答你的问题,这对我来说非常糟糕:MathJax会在框架框中显示纯文本,如果有LaTeX代码,它不知道如何转换:MathJax将不会加载所有默认情况下可能的包,因此对于相当多的包,您需要先设置MathJax配置对象,请参阅http://docs.mathjax.org/en/latest/tex.html,了解您可以加载的对象。
例如,http://jsfiddle.net/HPDDn/1/显示两个MathJax块,一个知道如何转换,另一个框架为纯文本,因为它不知道verbatim
是什么。
答案 1 :(得分:1)
问题与间距无关,你可以从
获得相同的框架<!DOCTYPE html>
<html>
<head> <title></title>
<meta charset="UTF-8" />
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head>
<body>
\begin{foo}
test
\end{foo}
</body>
</html>
您可以将mathjax配置为不查看某些元素,或者只是将文本包装在mathjax默认忽略的前面。
<!DOCTYPE html>
<html>
<head> <title></title>
<meta charset="UTF-8" />
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
</head>
<body>
<pre>
\begin{foo}
test
\end{foo}
</pre>
</body>
</html>