Sane默认字体?

时间:2010-07-19 14:44:36

标签: fonts gtk

是否有一个地方可以获得所有使用GTK的系统上保证存在的字体列表?我需要一种方法为某些图设置一个合理的默认字体,当然必须存在合理的默认字体。

编辑:如果没有保证特定字体存在,是否有一种简单的方法可以获得一些理智的默认可扩展sans-serif字体?我不关心细节。

编辑#2:如果在GTK上无法保证什么,有人可以给我很好的平台特定的默认可扩展sans-serif字体,保证在任何合理的Windows和* nix / X11安装中出现?

2 个答案:

答案 0 :(得分:4)

任何使用GTK的系统都不保证字体存在,因为GTK是一个跨平台的工具包,并且不会安装任何自己的字体。

根据渲染图形的方式(Cairo?),任何文本都应该以默认字体绘制。 编辑:听起来好像是在使用gdk_draw_layout()来绘制文字。这需要PangoLayout个参数。如果您使用PangoLayout获得gtk_widget_create_pango_layout(),那么它应该已经具有合理的默认字体集。您甚至可以使用PangoContext获取pango_layout_get_context(),然后在其上调用pango_context_get_font_description()来查找字体。

如果您还使用GNOME,则可以使用GConf检查/desktop/gnome/interface/font-name/desktop/gnome/interface/monospace-font-name/desktop/gnome/interface/document-font-name键的值。

答案 1 :(得分:2)

您应该在GTK +中使用的默认字体是“Sans”,“Monospace”和“Serif”。我不相信保证存在任何特定字体。