Ширина шрифта возвращает неверные значения - PullRequest
1 голос
/ 14 августа 2010

Следующий код должен возвращать ширину в пикселях символа 'a' шрифтом по умолчанию; это не:

import pygtk
gtk.require20()
import gtk

t = gtk.TextView()
print t.get_style().get_font().width("w") # Always returns -6

1 Ответ

1 голос
/ 16 августа 2010

gtk.Style.get_font() устарела, о чем свидетельствует предупреждение об устаревании, которое вы получаете, когда пытаетесь вызвать его; Я полагаю, именно поэтому он не работает. На моем PyGTK нет такой функции, как gtk.Style.string_width().

Вы должны использовать Pango:

import pygtk
pygtk.require20()
import gtk

t = gtk.TextView()
print t.create_pango_layout('w').get_pixel_size()
...