我想使用vb.net或C#将LaTeX转换为MathML。我怎么能这样做?
我找到并尝试了项目latex2mathml,但它不起作用。
在调试代码时,我可以看到它正在搜索一些总是不返回任何信息的东西,并且它不会创建MathML表达式。
在解决方案中,您可以找到Pase方法。 在你构建段落的地方,我可以找到下一个代码:
// Build paragraph blocks
LogInfo("BuildParagraphs");
BuildParagraphs(Root.FindDocument().Expressions[0], customization);
OnProgressEvent(step++, PASS_COUNT);
Root.FindDocument看起来像:
/// <summary>
/// Find the document block in children (valid only for the root expression).
/// </summary>
/// <returns></returns>
public LatexExpression FindDocument()
{
if (ExprType != ExpressionType.Root) return null;
LatexExpression documentExpression = null;
foreach (var child in Expressions[0])
{
if (child.ExprType == ExpressionType.Block && child.Name == "document")
{
documentExpression = child;
break;
}
}
return documentExpression;
}
下一个乳胶示例: “\ cos(2 \ theta)= \ cos ^ 2 \ theta - \ sin ^ 2 \ theta”表达式为:
[0]: {(0) [Command] cos}
[1]: {(0) [PlainText] (2}
[2]: {(0) [Command] theta}
[3]: {(0) [PlainText] ) = }
[4]: {(0) [Command] cos}
[5]: {(0) [PlainText] ^2 }
[6]: {(0) [Command] theta}
[7]: {(0) [PlainText] - }
[8]: {(0) [Command] sin}
[9]: {(0) [PlainText] ^2 }
[10]: {(0) [Command] theta}
当搜索结果为null时,我会在Root.FindDocument()行上得到一个exaption。表达式[0]
谢谢
大利