¿Cómo puedo cambiar el tamaño de fuente en GTK?
Pregunta
¿Hay una manera fácil de cambiar el tamaño de fuente de los elementos de texto en GTK? En este momento lo mejor que puedo hacer es hacer set_markup
en una etiqueta, con algo tonto como:
lbl.set_markup("<span font_desc='Tahoma 5.4'>%s</span>" % text)
Esta 1) me requiere para establecer la fuente, 2) que parece ser un montón de gastos generales (tener que analizar el margen de beneficio), y 3) haría más molesto para cambiar el tamaño de fuente de botones y tal. ¿Hay una mejor manera?
Solución
Si usted quiere cambiar la fuente en general en su aplicación (s), me gustaría dejar este trabajo a gtkrc (entonces se convierte en una cuestión Google, y "gtkrc tipo de letra" consulta nos lleva a esta foros de ubuntu enlazan que tiene el siguiente fragmento del archivo de gtkrc):
style "font"
{
font_name = "Corbel 8"
}
widget_class "*" style "font"
gtk-font-name = "Corbel 8"
(reemplace la fuente con la que usted / necesidad del usuario)
A continuación, el usuario obtendrá experiencia consistente y será capaz de cambiar los ajustes fácilmente sin necesidad de que se asoman en el código y sin necesidad de que manejar la sobrecarga de mantener su código relacionada con la configuración personal. Tengo entendido que puede realizar este ajuste más específico si tiene una definición más precisa para el widget_class.
Tu caso es distinto para diferentes plataformas, pero que yo sepa este archivo está siempre presente en algún lugar si GTK está siendo utilizado, y permite al usuario estar a cargo de los detalles de la presentación.
Otros consejos
En C, que puede hacer:
gtk_widget_modify_font(lbl, pango_font_description_from_string("Tahoma 5.4"));
En PyGTK, creo que es algo como:
pangoFont = pango.FontDescription("Tahoma 5.4")
lbl.modify_font(pangoFont)