我正在寻找与 MathJax 相当的东西,但它会在我网站呈现页面时在服务器后端将 MathML 或 LaTeX 转换为 HTML-CSS,而不是像传统的 MathJax 安装那样依赖于客户端的东西。理想情况下,这将用 Python 编写,但其他语言或命令行工具也可以接受。
似乎有一些(latex2html,plastex)但输出质量比我的 MathJax 生成的要低得多。
我看到过一些关于将 node.js + MathJax 用于此目的的讨论,但是 MathJax 维护人员对此有很多抱怨。
答案1
我正在研究一个类似的问题,利用以下工具:
- Python
- 基于python的matplotlib包
- LaTeX 的服务器端安装(通过 TeXLive 安装)
配置有点困难(仍在努力让 matplotlib 的 mathtext 渲染函数识别底层 LaTeX 引擎的全部功能),但输出质量不错(不过我现在仍然喜欢 MathJax 的输出质量)。
我目前正在使用此解决方案进行 LaTeX 到位图图像的转换,这并不完全符合您的预期,但也许您会发现它是一个可行的临时解决方案?
答案2
我写了下面的内容,然后重新阅读了这个问题,意识到你想要转换为 HTML+CSS。我原本以为你的意思是 MathML 或 HTML+CSS,并做出了适当的回答。然而,关于从 MathML 转换为 SVG 的部分可能很重要。另外,我会强烈建议您不要从 MathML 转换为 HTML+CSS。正确的将数学放到网络上的一种方法就是使用 MathML。
(是的,这只是我的观点......但这恰好是正确的观点!)
通常当人们谈论“LaTeX 到 ?ML”时,他们指的是“LaTeX数学到“ML”。我假设你的意思就是这样。如果你想要更全面的转换,那么 tex4ht 是最好的选择。但是,tex4ht 不适合按需生成内容的系统。
我知道的服务器端转换软件是itex到MML。输入格式是 LaTeX 数学语法的子集(该命令页面有链接)。它可以与 Markdown 集成,以生成一个很好的转换器,将人类可能输入的内容转换为 XHTML+MathML。
原始的 itexToMML 是一个 C++ 库。当前的作者已将其开发为 Ruby 扩展,用于 Instiki wiki 软件(参见实验室举个例子)。我找到了正确的 makefile 选项来构建 PHP、Perl 和 Python 的扩展。我还找到了将它连接到 PHP Markdown 的正确位置以使其工作。我不太懂 Python,所以我还没有尝试用 Python 的 Markdown 实现做同样的事情,但我真的希望这样做,部分原因是有一个 Python 库可以将 MathML 转换为 SVG,这意味着可以根据浏览器提供 MathML、SVG 或 PNG,从而让每个人都满意(好吧,可能不是每个人)这就是论坛做。
我的 itexToMML 代码版本位于 BZR 存储库中http://www.math.ntnu.no/~stacey/code/itexToMML。它尚未记录 - 这是我的待办事项列表。它还需要合并来自主要 itexToMML 源的最新更改 - 它有点落后于时代。
哦,原始的 itexToMML 是作为 ruby gem 提供的,所以如果您使用 ruby 的话,安装起来非常容易。
答案3
你可能正在寻找tex4ht
。请参阅我的回答这个帖子。
答案4
我相信可以在服务器端使用 Mathjax,方法如下。
- 编写一个程序,使用 Chrome 的核心通过 Mathjax 呈现 HTML 页面。
- 读取已完全渲染页面的输出
你已经完成了。
当然,使用 MathJax 的主要原因是它具有跨浏览器功能。这样你只需要在一个浏览器上工作。