Gtk 将GIcon转换为GdkPixbuf

Gtk 将GIcon转换为GdkPixbuf,gtk,gdk,gdkpixbuf,Gtk,Gdk,Gdkpixbuf,我正在使用GAppInfo/GDesktopAppInfo GIcon*图标=gtk_app_info_get_图标(G_app_info(appinfo)) 现在我需要把它放在GtkIconView上,但是我发现没有办法从GIcon创建GdkPixbuf。有人知道吗?非常感谢 编辑1:实际上这是医学。来自: GIcon不提供图标的实际pixmap,因为这超出了GIO的范围,但是GIcon的实现可能包含图标名称(请参见GThemedIcon)或图标路径(请参见GLOADABLECON) 然而,知

我正在使用GAppInfo/GDesktopAppInfo

GIcon*图标=gtk_app_info_get_图标(G_app_info(appinfo))

现在我需要把它放在GtkIconView上,但是我发现没有办法从GIcon创建GdkPixbuf。有人知道吗?非常感谢

编辑1:实际上这是医学。

来自:

GIcon不提供图标的实际pixmap,因为这超出了GIO的范围,但是GIcon的实现可能包含图标名称(请参见GThemedIcon)或图标路径(请参见GLOADABLECON)

然而,知道图标名称可能有助于获得实际的pixmap。例如,project使用以下函数从GtkIconTheme和GThemedIcon获取pixbuf:

从:

GIcon不提供图标的实际pixmap,因为这超出了GIO的范围,但是GIcon的实现可能包含图标名称(请参见GThemedIcon)或图标路径(请参见GLOADABLECON)

然而,知道图标名称可能有助于获得实际的pixmap。例如,project使用以下函数从GtkIconTheme和GThemedIcon获取pixbuf:


请参阅以下代码,了解如何从GIcon获取图标文件:

GtkIconInfo *pGtkIconInfo;
Gicon *pgIcon=gtk_app_info_get_icon (G_APP_INFO(appinfo));

GtkIconTheme *pGtkIconTheme= gtk_icon_theme_get_default();
pGtkIconInfo=gtk_icon_theme_lookup_by_gicon(pGtkIconTheme,pgIcon,256,GTK_ICON_LOOKUP_USE_BUILTIN);

//get icon filename if icone 256*256 exist.

printf("%s\n",gtk_icon_info_get_filename(pGtkIconInfo));

请参阅以下代码,了解如何从GIcon获取图标文件:

GtkIconInfo *pGtkIconInfo;
Gicon *pgIcon=gtk_app_info_get_icon (G_APP_INFO(appinfo));

GtkIconTheme *pGtkIconTheme= gtk_icon_theme_get_default();
pGtkIconInfo=gtk_icon_theme_lookup_by_gicon(pGtkIconTheme,pgIcon,256,GTK_ICON_LOOKUP_USE_BUILTIN);

//get icon filename if icone 256*256 exist.

printf("%s\n",gtk_icon_info_get_filename(pGtkIconInfo));

欢迎来到SO!您应该将代码部分标记为“编辑”。欢迎使用SO!您应该将代码部分标记为“编辑”。