6

我计划使用 Xcode 为 iPhone 制作一个应用程序,显示高中和大学生经常使用的数学方程式。我用 Mathematica 做所有的数学运算,它允许我以三种相关格式保存这些方程。(1) 乳胶(.tex);(2) MathML (.mml);(3) XHTMLMathML。

Mathematica 文档说第三种格式是带有嵌入式 MathML 的 XHTML。我发现这个浏览器测试中的一些示例在我的 iPhone 上看起来不太好。所以我可能不会完全依赖 MathML。

我是 Xcode 和我上面提到的三种文件格式的初学者,但我对 C++ 中的 OOP 有一些经验。假设 Mathematica 可以很好地编写任何方程所需的 LaTeX、MathML、XHHTMLMathML,这三种文件格式之间的权衡是什么?我可以在同一个应用程序中混合格式吗?

4

1 回答 1

3

我建议使用 HTML。包含数学内容的“正确”方式是 MathML——它是 HTML5 的一部分(但使用 TeX 见下文)。

iOS 的 UIwebview 是基于 webkit 的,因此具有相同的部分 MathML 支持(尽管在 iOS5 上由于字体错误而明显更糟)所以我也建议使用MathJax(免责声明:我是 MathJax 的一部分)。

MathJax 是一个开源的 javascript 库,它可以理解 TeX 和 Asciimath 输入,将其中之一转换为 MathML 并将 MathML 呈现为 HTML-CSS 或 SVG(在任何现代浏览器中)。

MathJax 混合这些输入格式没有问题。此外,它比 webkit 具有更好的 MathML 支持(如果您愿意,您可以随时配置 MathJax 以使用本机 MathML 支持——比如当您知道您的内容应该在 webkits 本机支持中呈现良好时)。

为了帮助您入门,您可以查看这个开源应用程序,了解如何将 MathJax 集成到 iOS 应用程序中。

于 2012-11-17T21:49:17.790 回答