需要数学编辑器来编写数学公式

时间:2009-08-26 10:10:39

标签: c++ qt dll open-source

需要将数学编辑器集成到我在C#上编写的应用程序才能编写数学公式。请有人帮我这个吗?一些开源代码会很棒!告诉我将您建议的应用程序集成到我的应用程序的步骤。

7 个答案:

答案 0 :(得分:6)

我建议您使用基于MathML的编辑器。公式描述是W3C标准。

开源MathML编辑器是gNumerator。它的核心组件和渲染引擎几乎完成。

什么是gNumerator?

首先,gNumerator是构成计算机数学程序的可重用组件的集合。大部分价值都在于这些组件,以及它们对希望重复使用它们的其他开发人员的实用性。

对于最终用户,gNumerator将是一个计算机数学系统,模糊地类似于Mathematica,nucalc或Matlab。 gNumerator的主要区别在于,它是可重用组件的集合,其次是使用MathML和JScript等标准语言进行用户交互。由于其他数学程序(如Mathematica或Matlab)都使用专有语言作为用户输入形式,因此gNumerator将允许用户输入标准MathML或JScript。

但是,你说这些语言的数字能力很弱。嗯,特定任务的语言“适应性”与语言本身相关性较小,而与该语言可用的库有关。是的,JScript没有附带任何好的数值库,也就是GSL,GNU Scientific Library的用武之地.gNumerator的一个库将是.net绑定到GSL,这允许它直接使用和.net语言例如c#,(编写语言gNumerator)和JScript(gNumerator脚本语言)直接使用GSL的强大功能。使用GSL将使gNumerator的计算能力与许多商业数学包相提并论。

gNumerator应用程序将在GNU通用公共许可证下发布,其“库组件(MathML DOM,渲染器,解释器等......)将在LGPL下发布,这使它们可以在商业应用程序中使用< / p>

库: 有2个库可以将源代码下载到: 1:MathML渲染控制 这是一个显示MathML的Windows.Forms(winforms)控件。所有当前发布的屏幕截图仅包含此控件。 2:MathML DOM 这是用于MathML的w3c推荐文档对象模型的c#中的忠实且几乎完整的实现。这是构建大多数其他gNumerator库的核心关键组件。

以下是显示其功能的屏幕截图 gNumerator Screenshot
(来源:sourceforge.net

另一方面(付费),有很多优秀的产品可以集成到您的项目中,并可用于编辑公式。其中之一是MathType。它的许可证价格合理,只需97美元。

答案 1 :(得分:3)

我认为最好的解决方案是让用户以TeX语法编写数学表达式,可能包括在您键入时更新的TeX渲染器。

答案 2 :(得分:2)

我建议您使用MEEL

答案 3 :(得分:1)

为什么不在我们的程序中使用Equation或MathType。我确定他们有可以使用的组件。 如果您想要开源,我建议您使用OpenOffice.org中的数学(http://www.openoffice.org/product/math.html

答案 4 :(得分:1)

你应该看看LyX - 它是一个使用LaTeX的开源(GPL)文档处理器。我非常肯定(但不是100%)它会在您编写时显示文本 - 并且“步骤,将[我的]建议应用程序集成到[您的]应用程序”可能会在源代码; - )

要检查的另一件事是LaTeXiT(如果你有权访问Mac)。它使用LaTeX编写方程式。它不是开源的,但它可能会给你一些想法。

祝你好运!

答案 5 :(得分:1)

我推荐iMathEQ,这是一个WYSIWYG数学公式编辑器。它支持导出MathML和图像。

答案 6 :(得分:0)

也许您可以使用this列表中的MathML兼容编辑器之一?您的C#应用​​程序是基于Web的应用程序还是桌面应用程序?