Pergunta

Existe uma maneira fácil de alterar o tamanho da fonte dos elementos de texto em GTK? Neste momento, o melhor que posso fazer é fazer set_markup em uma etiqueta, com algo bobo como:

lbl.set_markup("<span font_desc='Tahoma 5.4'>%s</span>" % text)

Este 1) me obriga a definir a fonte, 2) parece ser um monte de sobrecarga (ter que analisar a marcação), e 3) tornaria chato de mudar o tamanho da fonte de botões e tal. Existe uma maneira melhor?

Foi útil?

Solução

Se você quer mudar a pia geral em seu aplicativo (s), eu deixar este trabalho para gtkrc (torna-se então uma questão google, e "gtkrc fonte" consulta nos leva a este fóruns Ubuntu ligar que tem o seguinte trecho do arquivo gtkrc):

style "font"
{
font_name = "Corbel 8"
}
widget_class "*" style "font"
gtk-font-name = "Corbel 8"

(substituir a fonte com o que você / necessidade do usuário)

Em seguida, o usuário receberá experiência consistente e será capaz de alterar as configurações facilmente, sem necessidade de-los para picar no código e sem a necessidade de lidar com a sobrecarga de manutenção do seu código de configuração relacionadas com pessoal. Eu entendo que você pode fazer esta definição mais específica, se você tem uma definição mais precisa para o widget_class.

YMMV para diferentes plataformas, mas AFAIK este arquivo está sempre presente em algum local se GTK está sendo usada, e permite ao usuário para estar no comando de detalhes da apresentação.

Outras dicas

Em C, você pode fazer:

gtk_widget_modify_font(lbl, pango_font_description_from_string("Tahoma 5.4"));

Em PyGTK, eu acredito que é algo como:

pangoFont = pango.FontDescription("Tahoma 5.4")
lbl.modify_font(pangoFont)
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top