首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用于显示数学表达式的Delphi组件或库

用于显示数学表达式的Delphi组件或库
EN

Stack Overflow用户
提问于 2012-04-13 15:51:26
回答 4查看 5.3K关注 0票数 19

我正在寻找一个在Delphi中显示数学表达式的简单组件。当我刚开始的时候,我以为在网上找到一些东西很容易,但事实证明这比预期的要难。有很多很多的组件可以解析数学表达式,但是很少(一个都没有?)这将显示它们。

理想情况下,我希望组件像TLabel一样简单,我可以将标题设置为某个表达式,它将正确显示,但某种类型的库,让我在画布上绘制表达式也足以满足我的需要。

更新:

我不是在谈论绘制函数的图形或类似的东西。我想要显示(例如)

(X^2+3)/X

如下所示:

解决方案:

MBo的回答正是我想要的。有些人可能会对所有评论和文档都是俄语的事实感到厌烦,但不要让这吓到你。它真的很容易使用。

安装:将文件(至少是"ExprMake.pas“和"ExprDraw.pas")解压缩到库路径下的某个目录中。就这样。

用法:我还没有广泛地尝试过它,但这几行代码证明了它是多么简单。

代码语言:javascript
复制
procedure TForm1.Button1Click(Sender: TObject);
var
  vExprC : TExprClass;
  vExprB : TExprBuilder;
begin
  vExprB := TExprBuilder.Create;
  try
    vExprC := vExprB.BuildExpr('(X^2+3)/X');
    vExprC.Canvas := Canvas;
    vExprC.Font.Size := 50;
    vExprC.Draw(10,10,ehLeft,evTop);
  finally
    vExprC.Free;
    vExprB.Free;
  end;
end;
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-04-13 19:47:34

Native Delphi module由Anton Grigoriev绘制数学表达式。助理程序-俄语。This is how it looks

关于信用的补充:模块是免费的。作者只要求提到(AboutBox等),数学表达式是通过ExprDraw和ExprMake模块绘制的,由Anton Grigoriev编写(原始翻译自readme.txt)

票数 16
EN

Stack Overflow用户

发布于 2012-04-13 19:15:52

我不知道有没有原生的Delphi实现,但也许这个问题对你有帮助:How to render a formula in WPF or WinForms。它提到了一些可能被翻译或用作DLL的C/C#解决方案(参见OP的解决方案)。

另一种选择可能是这个Formulator ActiveX Control

此外,如果您使用其他搜索条件,尤其是不使用"Delphi“关键字,则可能会扩大搜索结果。;-)

代码语言:javascript
复制
renderer, formula, math, MathML, expression, engine, tex, ...

正如我们可以从MBo's answer学到的那样,用其他语言进行搜索也是一个好主意:-)

代码语言:javascript
复制
delphi математических формул рисования 

我肯定你搜索过类似的东西,但可能有一个关键词你已经忘记了。

票数 4
EN

Stack Overflow用户

发布于 2013-03-01 19:21:33

我寻找类似的组件已经有一段时间了,MBo的解决方案是可以接受的。

我相信这也可以通过另一种方式来实现:嵌入TWebBrowser,并为LaTex和MathML公式使用exixting javascript渲染器,但是...

我刚刚尝试过,我认为这是一个更好的解决方案!

⟪Delphi组件公式编辑器,允许您输入和显示任何复杂的数学公式,从简单的希腊符号到矩阵和复杂的整数表达式。您可以在Delphi环境中编写的项目中使用公式编辑器,例如,在测试不同数学领域(数学分析、离散数学、概率论等)、物理和其他领域知识的程序中。

在其中输入公式非常容易:

  • 简单符号的输入方式与在文本字段中输入数据的方式类似
  • 借助

的附加菜单⟫输入特殊符号和公式元素

它更好,因为你可以在一个额外的按钮菜单组件和/或使用数学表达式字符串和/或使用预定义的方法的帮助下,直接在“文本字段”组件中编辑公式。

希望它能帮上忙!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10137105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档