我想建立使用C#和光栅绘图应用到目前为止,我一直没能找到任何通用的重量轻2D图形构架,或指南。什么是绘图应用程序的优秀2D图形框架?
我希望你们几个将能够给我一个很好的开端,因为目前我的选择是使用GDI +或WPF,那就是它:(...
基本上我需要一些简单的将为我提供创建Canvas,Layers,Brushes以及导入/导出所有这些东西的功能。我浏览了几个图形应用程序,以了解他们如何实现他们的工具,并在线查看书籍并出来不知道从哪里开始
谢谢, Andrew
我想建立使用C#和光栅绘图应用到目前为止,我一直没能找到任何通用的重量轻2D图形构架,或指南。什么是绘图应用程序的优秀2D图形框架?
我希望你们几个将能够给我一个很好的开端,因为目前我的选择是使用GDI +或WPF,那就是它:(...
基本上我需要一些简单的将为我提供创建Canvas,Layers,Brushes以及导入/导出所有这些东西的功能。我浏览了几个图形应用程序,以了解他们如何实现他们的工具,并在线查看书籍并出来不知道从哪里开始
谢谢, Andrew
如果您想制作矢量编辑器或光栅编辑器,您不会提及。我假设光栅。
如果你没有太多的图形API的经验,只是想要得到的东西尽快的工作,只需用GDI + 90。它在概念上比WPF简单得多。
GDI +和WPF都可以做你想做的事。使用WPF可能会提供更好的性能,因为它使用Direct-X进行加速。它也使用了一个存储场景范例,这可能使得很多绘图操作在概念上更简单。虽然,学习曲线比GDI +高得多。
您始终可以使用Open-GL,Direct-X或非托管GDI。它们都具有良好的2D性能。但是你将不得不打电话给非托管代码。
如果你想学习2D图形,WinForms比WPF更容易学习。 WinForms支持画笔,画布,多种图形格式,文件导入/导出等。
Code Project网站有许多WinForms图形教程,请尝试从here开始。
自从这个答案发布以来,我改变了我的观点,现在推荐WPF。 WinForms是一个死胡同。 – 2013-03-18 19:56:50
XNA框架很容易使用并且运行良好,因为它实际上只是DirectX的包装。最大的好处是你可以将所有代码写入托管的C#中。在xna论坛上看看this post,看看如何读出显示输出。
还有一个Tao框架,它允许您为绘图需要使用OpenGL或SDL。它也是一套围绕每个OO包装。在Google上也有很多教程可以帮助您入门。
Piccolo 2D是Java和C#二维GFX架构。免费,开源。提供场景图等。可缩放。看起来不错。
我在成功的Java项目中使用了Piccolo。自2005年以来,.NET版本尚未更新,因此我正在寻找类似于嵌入WPF应用程序的内容。 – Emile 2015-02-05 08:15:13
我看到你已经更新了这个。你有机会看看SDL.Net吗?您正在寻找其他功能吗?至于你之前提到的闪烁问题,我已经有了最大帧速率模拟可视化,没有黑客让它工作。 – 2009-12-05 05:25:46