如何在Windows Forms中呈现化学反应?

4
我该如何在Windows表单中表示化学反应?我正在使用C#语言。可以使用表示数学公式,但化学反应怎么办?
简而言之,我想要在窗体上以正确的格式表示2H2 + O2 = 2H2O和复杂形式,如下图所示: enter image description here 我该如何实现这个功能?

2
有一些商业的ActiveX控件可用于此目的,尝试在谷歌上搜索“化学结构绘制ActiveX”。 - Doc Brown
谢谢您的指导,但我没有找到这样的ActiveX存在。请帮忙。 - Red Swan
你展示的图像不是化学反应。反应方程式类似于第一个例子。您可能会找到支持下标渲染等操作的库,以显示化学反应所需的内容。但是,几乎不可能找到可以显示配位化合物模拟模型的库。 - Cody Gray
尝试使用主要数据表示关键词“结构化数据格式[SDF,Molfile]”(2维布局)和“SMILES”(零维)进行操作。 - shellholic
仍然无法解决这个问题。请帮我。 - Red Swan
5个回答

4
这不是一个简单的问题,很难得到一个好的答案。
在化学领域工作的人可能知道可以用什么辅助库来绘制这些图表。但你需要希望有那样专业知识的人存在并注意到你的问题。否则,你将不得不自己编写所有的代码,考虑到你想要表示任意复杂的图表,这是一项非常困难的任务。
我建议尝试寻找商业软件来绘制图表,并询问这些公司是否可以绘制你所需的内容。首先可以尝试 Dundas 和 SoftwareFX 等公司。此外,还可以尝试查看在化学行业中使用的商业应用程序,看看是否有其他人绘制了这些图表,并询问他们是如何做到的。

感谢您提供正确的方向。我已经寻找了两天了。让我尝试一下您的指导。 - Red Swan
你也可以联系yWorks(http://www.yworks.com/en/index.html),看看他们的软件是否能够满足你的需求(根据文档,它能够绘制“生化反应网络”。我不敢说我知道这是什么意思 :))。 - MattDavey
非常感谢。但我找到了基于Letex的MimeText.dll。那么MimeText也支持化学结构绘图吗? - Red Swan

3

1
我们有一个开源应用程序叫做Chem4Word。在其中,我们通过WPF用户控件在Windows窗体中显示结构。
如果您在我们的GitHub存储库https://github.com/Chem4Word/Version3中查看,您会发现一个Windows表单应用程序,我们用于初始测试,可以从molfile显示结构。打开主要的Chem4Word解决方案,那里有一个测试套件文件夹,其中包含该应用程序,请将其设置为启动项目以进行操作。

0

有一些商业产品可以满足您的需求。然而,如果您正在寻找开源解决方案,就像大多数化学家一样,这里是一些基于我的经验推荐的建议。

由于您正在使用.NET,GGA软件的Indigo工具包是一个不错的选择。http://www.ggasoftware.com/opensource/indigo 它有非常易于阅读的API文档,并提供了许多示例。Indigo的渲染模块可以从各种文件格式(SMILES、mol、sdf、rdf、rxn等)中呈现分子和反应的图片,质量非常好。我相信它可以满足您在渲染化学反应方面的大部分要求。

我自己已经使用OpenBabel有一段时间了。它也是一个非常好的化学信息学开发工具。它是用C++编写的,也有.NET绑定。一些高级功能没有包含在库的NET版本中,但我相信渲染模块是包括在内的。图片质量与Indigo一样好,但API文档不太用户友好。此外,在使用之前需要安装整个软件包。如果您正在使用ASP.NET开发Webform应用程序,则可能会在服务器端访问本地代码时遇到授权问题。我必须说,这真是令人头疼。
还有Chemaxon软件可以为您完成渲染工作。它是商业软件,但一些基本功能,如反应渲染,是免费的。它基于Java,但有一个NET绑定。API文档还可以。当然,您需要在计算机上安装Java。

更新的靛蓝色网站:http://www.epam.com/industries/healthcare-and-life-sciences/life-sciences-open-source.html - kmote

0
这可能对您的目的来说有些晚了,但我一直在使用OpenBabel并取得了巨大成功。我已经能够在Canonical SMILES、SDF文件等之间进行转换,并将其转换为PNG和SVG格式。(不要介意我自己做广告)我的博客上可以找到一个示例,展示了它在IPython笔记本中的应用。它是用C++编写的,但也有Python绑定。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接