Word (2007+) can accept MathML from the clipboard. For example, the Windows 7 Math input panel, for example, on its βpasteβ, simply puts the generated MathML on the clipboard and then sends the simulated control key event v to the next active application, which we hope will paste the math at the current point.
Internally Word 2007 does this by running the XSLT MathML stylesheet to create OOML markup, which it then inserts to create the math zone in the docx file.
A stylesheet is usually set as something like
/Program Files/Microsoft Office/Office12/OMML2MML.XSL
so an alternative approach that gives you more control is to use the .NET XSLT processor to convert MathML to OMML, and then either directly into the xml ooxml files or through the Office API add ooMML to the contents of the xml document.
source share