根据faq.pygtk.org上的pygtk2文档,更改字体的方法是这样的定义:
...
label = gtk.Label("MyLabel")
label.modify_font(pango.FontDescription("sans 48"))
...
我希望避免使用gtk css定义。虽然我很乐意接受一个利用gtk的css支持的答案。
我的目标字体是gnu unifont(unifont medium
),如果有任何改变;此字体以tty格式提供。
此时我假设将字体应用于标签类似于将字体应用于表格单元格,尽管两者的示例都是理想的。
最新的pygtk3文档似乎并未涵盖此主题:http://python-gtk-3-tutorial.readthedocs.org/en/latest/label.html,并且整个文档中几乎没有提及字体。
答案 0 :(得分:3)
它基本相同:
from gi.repository import Gtk, Pango
label = Gtk.Label('MyLabel')
label.modify_font(Pango.FontDescription('Dejavu Sans Mono'))
答案 1 :(得分:1)
一种方法是使用Pango标记[1]:
label = Gtk.Label()
label.set_markup("<span font_desc='unifont medium'>%s</span>" % 'some text')
[1] https://developer.gnome.org/pango/stable/PangoMarkupFormat.html