需要数学编辑器来编写数学公式
Posted
技术标签:
【中文标题】需要数学编辑器来编写数学公式【英文标题】:Need a Math Editor to write math formulas 【发布时间】:2009-08-26 10:10:38 【问题描述】:需要一个数学编辑器来集成到我用 C# 编写的应用程序中,以便能够编写数学公式。有人可以帮我吗?一些开源代码会很棒!告诉我步骤,将您建议的应用程序集成到我的应用程序中。
【问题讨论】:
贴一些你试过的代码,看看能不能帮忙 从 c++ 更改为 c#(历史)似乎是一个巨大而突然的变化......?反正;这里的观众是什么?例如,我会很高兴有一个文本框,我可以在其中输入“(x + y)* z”等 - 然后你只需要一个解析器就可以了。 不,这不是我想要的,需要在 MS Word 中创建一个将湖 MathType 或 Equation 用于严肃数学公式编辑的软件 (啊,与问题原版相关的评论) 【参考方案1】:我建议您使用基于MathML 的编辑器。公式描述是W3C 标准。
一个开源的 MathML 编辑器是gNumerator。它的核心组件和渲染引擎几乎已经完成。
什么是 gNumerator?
首先,gNumerator 是组成计算机数学程序的可重用组件的集合。大部分价值将在于这些组件,以及它们对希望重用它们的其他开发人员的有用性。
对于最终用户来说,gNumerator 将是一个计算机数学系统,与 Mathematica、nucalc 或 Matlab 有点相似。 gNumerator 的主要区别在于,首先,它是可重用组件的集合,其次,使用标准语言(如 MathML 和 JScript)进行用户交互。由于 Mathematica 或 Matlab 等其他数学程序都使用专有语言作为用户输入形式,gNumerator 将允许用户输入标准 MathML 或 JScript。
但是,你说这些语言的数字能力很弱。好吧,一种语言对特定任务的“适应性”与语言本身的关系相对较小,而与该语言可用的库有关。是的,JScript 不附带任何好的数值库,这就是 GSL、GNU 科学库的用武之地。gNumerator 的库之一将是与 GSL 的 .net 绑定,这允许它直接使用 .net 语言例如 c#(编写 gNumerator 的语言)和 JScript(gNumerator 脚本语言)直接使用 GSL 的强大功能。 GSL 的使用将使 gNumerator 的计算能力与许多商业数学软件包相当。
gNumerator 应用程序将在 GNU 通用公共许可证下发布,其库组件(MathML DOM、渲染器、解释器等)将在 LGPL 下发布,这使得它们可用于商业应用程序
图书馆: 您可以将源代码下载到 2 个库: 1:MathML 渲染控制 这是一个显示 MathML 的 Windows.Forms (winforms) 控件。所有当前发布的屏幕截图都只是这个控件。 2:MathML DOM 这是 w3c 推荐的 MathML 文档对象模型的 c# 中忠实且几乎完整的实现。这是构建大多数其他 gNumerator 库的核心、关键组件。
这是显示其功能的屏幕截图 (来源:sourceforge.net)
另一方面(付费),有一些很棒的产品可以集成到您的项目中并使其可用于编辑公式。其中之一是MathType。它的许可证价格合理,只需 97 美元。
【讨论】:
【参考方案2】:我想说最好的解决方案是让用户以TeX 语法编写数学表达式,可能包括在您键入时更新的 TeX 渲染器。
【讨论】:
对于 Web 应用程序,jsMath (math.union.edu/~dpvc/jsMath) 可能有用。【参考方案3】:我建议你使用MEEL
【讨论】:
嗨,安德烈。我从您的答案中删除了垃圾邮件标志,因为它们似乎确实是主题。但是,您应该知道,来到 *** 并仅发布指向单个产品页面的链接的用户通常会被删除,因为人们认为他们只是在这里宣传他们的网站或博客,而不是做出贡献。在发布未来的答案时请记住这一点。此外,如果这是您的产品,您需要披露。更多信息在这里:***.com/faq 和这里:meta.stackexchange.com/questions/15787【参考方案4】:然后你为什么不在我们的程序中使用 Equation 或 MathType。我确定他们有您可以使用的组件。 如果你想要开源,我建议使用来自 OpenOffice.org (http://www.openoffice.org/product/math.html) 的 Math
【讨论】:
如何将数学从 OpenOffice 集成到我的代码中?我需要一种方法来组织集成,以便我的应用程序能够使用这些功能。 下载它的源代码并尝试集成到您的应用中。我认为这是不可能的。 请看wiki.services.openoffice.org/wiki/Documentation/DevGuide/…和java.dzone.com/news/integrate-openoffice-java【参考方案5】:您应该查看LyX - 这是一个使用 LaTeX 的开源 (GPL) 文档处理器。我很确定(但不是 100%)它会在您编写时显示文本 - 并且“将 [my] 建议的应用程序集成到 [your] 应用程序的步骤”可能位于源代码;-)
要检查的另一件事是LaTeXiT(如果您可以使用 Mac)。它使用 LaTeX 编写方程式。它不是开源的,但也许它会给你一些想法。
祝你好运!
【讨论】:
关于 LaTeXiT,你可能会得到开发者的控制,因为它是一个私人操作。【参考方案6】:我推荐iMathEQ,它是一个所见即所得的数学方程式编辑器。支持导出MathML和图片。
【讨论】:
【参考方案7】:也许您可以在this 列表中使用与 MathML 兼容的编辑器之一?您的 C# 应用程序是基于 Web 的应用程序还是桌面应用程序?
【讨论】:
它不是基于网络的,只是和exe文件应该是以上是关于需要数学编辑器来编写数学公式的主要内容,如果未能解决你的问题,请参考以下文章