C# 如何在gtk项目中使用system.drawing

C# 如何在gtk项目中使用system.drawing,c#,mono,system.drawing,gtk#,C#,Mono,System.drawing,Gtk#,我知道gtk#支持两个绘图库,system.drawing(与windows或其他东西兼容)和mono.cairo。我想问 第一:就能力而言,哪一个更好使用 第二:如何在gtk项目中使用system.drawing。我知道使用了某种类型的ExposeEvent,但不知道它是什么以及背后的概念,请在回答中包括这一点以及任何其他需要的理论/概念。请给出一个在表格上画一条线的例子 我可能会使用system.drawing,所以请将答案集中在问题的第二部分,尤其是理论/概念部分。谢谢你我自己的一些想法,

我知道gtk#支持两个绘图库,
system.drawing
(与windows或其他东西兼容)和
mono.cairo
。我想问

第一:就能力而言,哪一个更好使用

第二:如何在gtk项目中使用
system.drawing
。我知道使用了某种类型的
ExposeEvent
,但不知道它是什么以及背后的概念,请在回答中包括这一点以及任何其他需要的理论/概念。请给出一个在表格上画一条线的例子

我可能会使用system.drawing,所以请将答案集中在问题的第二部分,尤其是理论/概念部分。谢谢你

我自己的一些想法,可能不是100%正确

。Cairo允许您将GTK+小部件中的图形作为Cairo对象公开,如中所示。这样的图形确实是开罗的对象。请注意,没有Cairo就不能使用GTK

由于GTK+底层框架的跨平台兼容性,GTK#与Windows和其他操作系统兼容。这不是因为
系统。绘图

GTK+不依赖于GDI+,GTK#不依赖于
系统。绘图也不依赖于

GTK#在某些方面支持
System.Drawing
。例如,您可以将GTK+小部件中的图形作为
System.Drawing
对象公开,如GTK.Dotnet部分下所示。GTK#将Cairo对象转换为等效的
System.Drawing
counter parties