有没有什么库可以接受MathML (或者更好的是OMML)并输出一个.PNG文件?
我正在为.docx文件建立一个导出过程,作为这个过程的一部分,我想提取公式并将它们呈现为.PNG文件。当你为web保存文档时,Word2007本身就可以做到这一点,但到目前为止,我还没有找到一种通过编程来做到这一点的方法(如果有人对此有答案的话,那就更好了)。因此,下一个最好的方法是使用微软提供的XSL样式表,并将其转换为MathML。
不幸的是,我还没有找到任何(可以工作的) MathML或OMML的渲染库。
如果没有用于此目的的纯.NET库,我将满足于任何我可以从命令行调用的东西,以便从MathML或OMML中输出.PNG。
发布于 2010-05-29 12:51:03
我也有类似的需求。下面是一个适用于我的片段:
public void FormulaToImage(string imageName, string eq)
{
Application app = new Application();
Document _doc = app.Documents.Add();
Range _range = _doc.Range();
_range.Text = eq; // "Celsius = (5/9)(Fahrenheit – 32)";
_doc.OMaths.Add(_range);
_doc.OMaths.BuildUp();
_doc.SaveAs(@"foo.htm", WdSaveFormat.wdFormatHTML);
//the gif appears to be better quality than the png
File.Move(@"foo_files\image002.gif", imageName + ".gif");
app.Documents.Close(WdSaveOptions.wdDoNotSaveChanges);
app.Quit(false);
}发布于 2010-03-13 13:11:29
你可以尝试SVGMath将mathml转换为SVG,然后使用一些工具将svg转换为png,例如
http://harriyott.com/2008/05/converting-svg-images-to-png-in-c.aspx
或者使用rsvg lib将svg转换为png文件。
发布于 2010-03-16 01:41:13
我们创建了一个名为公式编辑器的动态链接库,许多人将其与.NET一起使用来将MathML转换为PNG。它也可以作为命令行可执行文件。它不是免费的,但这意味着你可以获得技术支持和错误修复。欲了解更多信息,请点击此处:http://dessci.com/en/products/mathflow/mf_components.htm
https://stackoverflow.com/questions/1060764
复制相似问题