是否智能构建OpenGL C#应用程序来取代GDI

Yar*_*ron 3 c# opengl graphics 2d vector-graphics

我使用MFC开发了一个非常大的应用程序.Naturaly,我使​​用GDI绘图,CCmdTarget用于事件路由,以及文档视图架构.这是一条方便的发展道路.

现在,客户有兴趣将此应用程序转换为.Net.我更愿意(也是他们)用C#编写新产品.

应用程序显示并与数千个图形对象进行交互,因此我认为使用GDI +虽然看起来很自然,但可能会导致性能问题,所以我在考虑使用OpenGL,特别是OpenTK作为图形库(它是2D).

我知道OpenGL与这些Windows API的工作方式不同,后者依赖于屏幕部分的Invalidation.OpenGL有一个渲染循环,不断绘制到屏幕上.

我的问题是:这是一种可接受的方式,考虑:

  • 性能 - 用户是否需要特殊的图形卡(硬件?).这是图形密集型,但它不是一个高端游戏

  • 打印和打印预览 - 这些事情对于achienve来说是否复杂?

  • 多个选择和上下文菜单

这个库在Windows窗体中运行良好吗?

Jor*_*oba 7

我不这么认为.如果可以,请使用WPF,否则使用DirectX.

我知道这可能不公平,但如果我在Windows(微软)上使用.NET(微软)进行编程,我宁愿使用DirectX ......这也是来自微软.

作为旁注:不要重新发明轮子.如果您确实有充分的理由,在open-gl中重新编码用户控件可能非常耗时.