Aspose word关于insertHtml插入mathML问题

请问我通过mathML写入word的的公式里为什么会有很多虚线方框

public static void main(String[] args) throws Exception {
        DocumentBuilder builder=new DocumentBuilder(new Document());
        String str="<math xmlns=\"http://www.w3.org/1998/Math/MathML\">" +
                "                + <mi>E</mi><mo>=</mo><mi>m</mi><mi>c</mi><msup><mi>2</mi></mi>" +
                "                + </math>";
        builder.insertHtml(str);
        builder.getDocument().save("D:\\test.docx");
    }

现在我不太确认是不是我的mathML有问题,还麻烦解答一下

@1798873791 您应根据文档更新 html 数学公式,以获得正确的结果: <math> - MathML | MDN.

String str="<math xmlns=\"http://www.w3.org/1998/Math/MathML\">" +
        "<mi>E</mi>" +
        "<mo>=</mo>" +
        "<mi>m</mi>" +
        "<msup>" +
        "<mi>c</mi>" +
        "<mn>2</mn>" +
        "</msup>" +
        "</math>";

很抱歉提供了错误的mathml。 请问一下word这个包里有latex转mathMl的方法吗

@1798873791 遗憾的是,Aspose.Words 没有将 LaTex 转换为 MathMl 的方法。我们已经在我们的问题跟踪系统中记录了一个功能请求 WORDSNET-18495,一旦准备就绪,我们会通知您。

多谢,我已经找到可用的jar,snuggletex-core这个类库能兼容大量的公式,支持它们latex转mathML。
还有个问题insertHtml可以插入OMML吗 或者有其他方法可以插入吗

@1798873791 遗憾的是,无法直接插入 OMML。您可以插入 EQ 字段创建数学对象,然后将其转换为 OfficeMath。

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

FieldEQ field = (FieldEQ) builder.insertField(FieldType.FIELD_EQUATION, true);
builder.moveTo(field.getSeparator());
builder.write("\\f(d,dx)(u + v) = \\f(du,dx) + \\f(dv,dx)");
builder.moveTo(field.getStart().getParentNode());

builder.insertParagraph();

doc.save("field.docx");
Document doc = new Document("field.docx");

// 获取文档中的所有 EQ 字段。
FieldCollection fields = doc.getRange().getFields();
ArrayList<FieldEQ> eqFields = new ArrayList<>();
for (Field eqField : fields) {
    if (eqField.getType() == FieldType.FIELD_EQUATION) {
        eqFields.add((FieldEQ) eqField);
    }
}

// 将 EQ 字段转换为 OfficeMath。
for (FieldEQ eq : eqFields) {
    OfficeMath math = eq.asOfficeMath();
    eq.getEnd().getParentNode().insertAfter(math, eq.getEnd());
    eq.remove();
}

doc.save("OfficeMath.docx");