将图像加载到单声道上的cairo

时间:2012-01-16 09:23:19

标签: c# image mono gtk# cairo

我四处寻找一种方法,使用Mono(C#)绑定库将png加载到Cairo中,但我得到的最接近的是使用类似cairo_image_surface_create_from_png()的库的C绑定。但是,在库的C#绑定中,我没有在Cairo.ImageSurface.*下看到任何有用的静态成员。在某个地方,一篇旧文章提到绑定是不完整的,是这种情况吗?目前我正在使用Gdk.Image.Pixbuf来加载内存(嵌入)图像但看到Gtk +已经转移到Cairo并且Mono中的Windows.Forms正在使用Cairo,我认为开罗的C#绑定至少会是完成足以包括图像加载。我可能错过了什么?

1 个答案:

答案 0 :(得分:2)

我最近这样做了。您需要将图像加载到Cairo Surface: -

var icon = new ImageSurface( pngfile );

然后您可以使用ImageSurface.Show方法进行渲染:

icon.Show( ctx, x, y );

Mono.Cairo Cookbook page上查看更多有用的内容。