有可以将 LATEX 完美转化为HTML的插件,但前提是你编译命令不是用的 XeTeX 。 由于 XeTeX 利用的是系统的字体,而浏览器不是,故不能将利用 XeTeX 编译的 LATEX 转化为HTML……(应该是这样的)
LATEX 最完美的地方在于公式,转化HTML格式最难的部分也在公式,有些转换工具是将公式转换成图片并嵌入在HTML中(有些不是,比如tth),但使用xelatex不能将tex文件转成HTML。
Emacs+Org (Org版本7.8.11,旧版本好像办不到)是怎么办的?
比如下面的公式(本文用Emacs的Org Mode编辑,生成HTML后截图,由于直接复制效果极差,故选择截图)
Emacs和
LATEX
作为编辑软件的两大杰出代表通过Org-Mode结合得十分完美,在Org-Mode中可以嵌入
LATEX
数学命令(基本上所有的数学命令都可以,接触过Org-Mode的都知道里面有^上标_下标,这些都是
LATEX
里的)。
通过生成的源码可以看到:
<script type="text/javascript" src="http://orgmode.org/mathjax/MathJax.js">
<!--/*--><![CDATA[/*><!--*/
MathJax.Hub.Config({
// Only one of the two following lines, depending on user settings
// First allows browser-native MathML display, second forces HTML/CSS
// config: ["MMLorHTML.js"], jax: ["input/TeX"],
jax: ["input/TeX", "output/HTML-CSS"],
extensions: ["tex2jax.js","TeX/AMSmath.js","TeX/AMSsymbols.js",
"TeX/noUndefined.js"],
tex2jax: {
inlineMath: [ ["\\(","\\)"] ],
displayMath: [ ['$$','$$'], ["\\[","\\]"], ["\\begin{displaymath}","\\end{displaymath}"] ],
skipTags: ["script","noscript","style","textarea","pre","code"],
ignoreClass: "tex2jax_ignore",
processEscapes: false,
processEnvironments: true,
preview: "TeX"
},
showProcessingMessages: true,
displayAlign: "center",
displayIndent: "2em",
"HTML-CSS": {
scale: 100,
availableFonts: ["STIX","TeX"],
preferredFont: "TeX",
webFont: "TeX",
imageFont: "TeX",
showMathMenu: true,
},
MMLorHTML: {
prefer: {
MSIE: "MML",
Firefox: "MML",
Opera: "HTML",
other: "HTML"
}
}
});
/*]]>*///-->
</script>
生成的HTML文件中用了Org官网的MathJax.js,MathJax官网: http://www.mathjax.org/
其实Org生成HTML的时候遇到公式并没有调用本机的LATEX命令,而是利用MathJax.js来实现公式显示的。
上面的公式就是在lyx中输完公式后查看源码,然后插入到Emacs的Org-Mode里生成HTML后的结果。
Date: 2012-06-17 00:53:45 CST
Author: visaya fan
Org version 7.8.11 with Emacs version 23
Validate XHTML 1.0