Chinaunix首页 | 论坛 | 博客
  • 博客访问: 290259
  • 博文数量: 34
  • 博客积分: 1400
  • 博客等级: 上尉
  • 技术积分: 433
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-23 13:16
文章分类

全部博文(34)

文章存档

2011年(3)

2010年(4)

2009年(6)

2008年(21)

我的朋友

分类: LINUX

2008-11-13 10:26:33

在DirectFB(Framebuffer)下开发Gtk程序的人都知道,由于Gdk-DirectFB接口实现不完全(不排除是我们库的问题),我们不可以使用gdk_pixbuf_render_pixmap_and_mask来使PNG透明。因此需要其他方法来让PNG透明显示,否则发挥不出PNG的优势,也不能实现绚丽的界面。
 
经过实验,发觉cairo能够使它透明显示,步骤很简单:
 
cairo_surface_t *png_surface = cairo_image_surface_create_from_png("./images/bg.png");
cairo_set_source_surface(cr, png_surface, 10, 10);
cairo_paint(cr);
 
这很好用,另外,我们可以使用cairo画其他图片格式,我们可以把其他图片Load到Pixmap,然后使用gdk_cairo_set_source_pixbuf。
阅读(3039) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-04-03 11:58:02

可以有具体的代码吗?? 我现在正在做这方面,资料太少,CAIRO也不了解谢谢