发新话题
打印

【求助】精通GTK的大侠请进来!

【求助】精通GTK的大侠请进来!

  我在GTK下往drawarea控件画一个图形,是小手,现成的图形文件jpg格式,但手周围的白色背景老是显示出来,而不是透明的,十分痛苦,试了好多办法都不行,请哪们大侠帮帮忙,怎样才能让图的背景是透明的,我用的函数是gtk_pixbuf_render_drawable().      

TOP

具体你想干什么我还是不怎么清楚,我认为:
先把它转换成xpm文件:
jpegtopnm yourfile.jpg | ppmtoxpm >yourxpm.xpm
用vi把这个xpm文件打开,把其中定义"黑色"的那个字符替换成None就行了,
如:
/* XPM */
static char *yourxpm[] = {
.....
"b c black",
....
}
就把black替换成None 就是.

然后你就可以生成一个pixmap
pixmap = gdk_pixmap_create_from_xpm_d (window->window, &mask,
                                            &style->bg[GTK_STATE_NORMAL],
                                               yourxpm);
这样,你想要的能不能实现了呢?
给你一个我的blog看看,可能对你有点帮助:fitren.blog.sohu.com      
若不是因为风,雨不会美丽!

TOP

执行版规:提问+10eden      
若不是因为风,雨不会美丽!

TOP

发新话题