.net 新的2D API:将2D施工图应用程序移植到Mac、Linux和Windows

.net 新的2D API:将2D施工图应用程序移植到Mac、Linux和Windows,.net,pdf,2d,gdi+,quartz-2d,.net,Pdf,2d,Gdi+,Quartz 2d,我们有一个颇受欢迎的2D文本/形状绘图应用程序,供建筑/物业管理行业的人员使用。我们的程序绘制二维平面图(矢量图形)。目前,我们将C#与GDI+一起使用,但微软放弃了GDI+,取而代之的是WPF,这对于创建2D CAD绘图应用程序来说是可怕的(但对于需要创建基于表单的桌面应用程序的html开发人员来说是好的)。我们需要一个新的2D API。我们也需要将我们的应用程序移植到Mac和Linux上(Windows 8的“开始”菜单似乎一手扼杀了我们的Windows市场)。我们的重点是基于矢量的图形(使

我们有一个颇受欢迎的2D文本/形状绘图应用程序,供建筑/物业管理行业的人员使用。我们的程序绘制二维平面图(矢量图形)。目前,我们将C#与GDI+一起使用,但微软放弃了GDI+,取而代之的是WPF,这对于创建2D CAD绘图应用程序来说是可怕的(但对于需要创建基于表单的桌面应用程序的html开发人员来说是好的)。我们需要一个新的2D API。我们也需要将我们的应用程序移植到Mac和Linux上(Windows 8的“开始”菜单似乎一手扼杀了我们的Windows市场)。我们的重点是基于矢量的图形(使用连接、尺寸线、文字、门洞口绘制墙),通常用于打印。我读过关于Quartz 2D、pdf等的资料,但我不知道什么可以在所有平台上工作。目前,我们的应用程序跟踪我们自己的数据结构中的所有绘图对象,因此我们不需要使用api来保留/记住我们绘制的所有对象(WPF或其他保留模式api)。我们应该使用什么非保留模式、pdf友好的API来尽可能保持跨平台?Java太有限了,因为我们使用了很多函数式语言特性(F#)。请随意更正我目前对这个问题中任何主题的理解……我只需要一个好的解决方案。

这个问题比提供渲染层的库要大得多。您需要考虑整个编程语言、开发环境和UI开发。我相信只有Java能够满足您的需求,但如果有人反驳我,我会很高兴。

GDI+和WPF一样没有被抛弃。这些是苹果和桔子。GDI+是一个渲染库;WPF是一个UI框架。你无法比较它们。