C# 如何在Windows窗体中渲染化学反应?

C# 如何在Windows窗体中渲染化学反应?,c#,winforms,mime,chemistry,C#,Winforms,Mime,Chemistry,如何在windows窗体中表示化学反应?我用的是c语言。可以使用mimetxt.dll表示数学公式,但化学反应呢 简而言之,我想在win表单2H2+O2=2H2O和复杂表单上以适当的格式表示,如: 我怎样才能做到这一点呢?这不是一个很可能得到好答案的简单问题 从事化学领域工作的人可能知道可以用来绘制此类图表的助手库。但是你需要希望有一个有专业知识的人存在并注意到你的问题。或者,您必须自己编写所有代码,如果您想要表示任意复杂的图表,这是一项非常重要的任务 我建议尝试寻找商业软件来绘制图表,并询问

如何在windows窗体中表示化学反应?我用的是c语言。可以使用
mimetxt.dll
表示数学公式,但化学反应呢

简而言之,我想在win表单
2H2+O2=2H2O
和复杂表单上以适当的格式表示,如:


我怎样才能做到这一点呢?

这不是一个很可能得到好答案的简单问题

从事化学领域工作的人可能知道可以用来绘制此类图表的助手库。但是你需要希望有一个有专业知识的人存在并注意到你的问题。或者,您必须自己编写所有代码,如果您想要表示任意复杂的图表,这是一项非常重要的任务


我建议尝试寻找商业软件来绘制图表,并询问这些公司您是否可以绘制所需的内容。像Dundas和SoftwareFX这样的公司值得一试。另外,试着看看化学工业中使用的商业应用程序,看看是否有其他人画这些东西,看看你是否可以问他们是怎么画的。

试试MolEngine()。如果您尝试构建Web应用程序,下面是示例代码:()

对于您的目的来说,这可能太晚了,但我已经成功地使用了它。我已经能够将规范的微笑、SDF文件等转换为PNG和SVG格式。(无耻的插拔)我的博客上可以找到它使用IPython笔记本的一部分。它是C++的,但也有Python绑定。

< P>有一些商业产品可以满足你的要求。然而,如果你正在寻找开源解决方案,就像大多数化学家一样,这里有一些基于我个人经验的建议

由于您使用的是.NET,GGA软件的Indigo toolkit是一个不错的选择。 它有一个非常容易阅读的API文档,其中有很多示例。Indigo的渲染模块可以从各种文件格式(SMILES、mol、sdf、rdf、rxn等)以非常高的质量渲染分子和反应的图片。我相信它可以满足你对呈现化学反应的大部分要求

我自己使用OpenBabel已经有一段时间了。它也是一个非常好的化学信息开发工具。它是用C++编写的,并且有.NET绑定。有些高级函数没有包含在网络版的库中,但我很确定渲染模块也包含在其中。图片的质量与Indigo一样好,但API文档的用户友好性不高。此外,您需要先安装整个软件包,然后才能使用它。如果您正在使用ASP.NET开发Web表单应用程序,则访问服务器端的本地代码时可能会遇到授权问题。我不得不说,这是一种痛苦


还有Chemaxon软件也可以为您做渲染工作。这是一个商业软件,但一些基本功能,如渲染反应是免费的。它基于Java,但有一个网络绑定。API文档还可以。当然,您需要在您的计算机上安装java。

我们有一个名为Chem4Word的开源应用程序。因为我们通过WPF用户控件以windows窗体显示结构

如果您查看我们的GitHub存储库,您将发现一个windows窗体应用程序,我们使用它进行初始测试,它可以显示molfile中的结构。
打开主Chem4Word解决方案有一个应用程序所在的test harness文件夹,将其设置为启动项目,让其发挥作用。

感谢您的正确指导。我从前两天就开始找这个了。让我试试你的指导。你也可以给yWorks()打个电话,看看他们的软件是否能满足你的需要(根据文档,它能够绘制“生化反应网络”。我不假装知道这意味着什么:)非常感谢。但是我找到了基于Letex的MimeText.dll。那么Mimetext是否也支持化学结构绘图?有一些商业ActiveX控件可用于此目的,请尝试通过谷歌搜索“化学结构绘图ActiveX”。感谢您的指导,但我没有发现存在此类ActiveX。请帮忙你展示的图像不是化学反应。反应就像第一个例子一样是方程。您可能会找到一个支持显示化学反应所需的下标渲染等的库。您不太可能找到一个可以显示协调复合体模拟模型的库。请尝试将主要数据表示形式作为关键字“结构数据格式”(二维布局)和(零维)。仍然无法解决此问题。请帮助我更新indigo网站: