GTK:如何获得GTK_ICON_SIZE_BUTTON等的宽度和高度?

时间:2011-09-28 09:47:28

标签: gtk

我需要将自己的图像添加到GTK图标主题中,所以我需要以某种方式计算GTK用于显示不同预定义大小的图标的大小:GTK_ICON_SIZE_BUTTONGTK_ICON_SIZE_MENU,{{1 GTK手册指出,大小可以作为GTK_ICON_SIZE_DIALOG对象的gtk-icon-sizes属性的值。我在最新的ubuntu上执行了以下代码:

GtkSetting

但输出很短:

#!/usr/bin/env python
import gtk; print(gtk.settings_get_default().get_property('gtk-icon-sizes'))

我在哪里可以找到其他尺码,例如'panel-menu=22,22;gtk-button=16,16' GTK_ICON_SIZE_DIALOG

2 个答案:

答案 0 :(得分:2)

GTK将图标大小调整为他们需要的大小。根据{{​​3}},您应该至少制作一个48x48图标,以及可选的可扩展SVG图标。这足以显示任何尺寸。

Icon Theme Specification建议你可以制作一些补充尺码,以尽量减少GTK内部调整图标的频率。

答案 1 :(得分:0)

只需使用gtk_icon_theme_add_builtin_icon将图片添加到图标列表中,然后将其用作命名图标。

Vala中的一个例子:

Gdk.Pixbuf pixbuf;
pixbuf = new Gdk.Pixbuf.from_file_at_size(Path.build_filename(AutovalaPluginConstants.DATADIR,"valaplugin","application.svg"),-1,-1);
Gtk.IconTheme.add_builtin_icon("autovala-plugin-executable",-1,pixbuf);