Я хочу отобразить карту с изображением 139 кол. * 121 строки.
(размер изображения 32 * 32 px)
Я использую gtk.Iconview
с gtk.ListStore
, которыйЯ заполняю gtk.gdk.Pixbuf
, вот так:
(двумерный список graph
содержит объекты, содержащие путь к отображаемым изображениям)
pixbuf_passage = gtk.gdk.pixbuf_new_from_xpm_data(xpmdata)
for row in graph :
for col in row :
pixbuf = gtk.gdk.pixbuf_new_from_file(col.img_base)
if col.passage :
pixbuf_passage.composite(pixbuf, 0, 0, pixbuf_passage.props.width, pixbuf_passage.props.height, 0, 0, 1.0, 1.0, gtk.gdk.INTERP_BILINEAR, 255)
self.grid.listStore.append([pixbuf, tooltip])
Моя проблема в том, что загрузка изображенийвремя может быть довольно продолжительным, в зависимости от конфигурации компьютера:
- ~ 20 с для Intel Core i7 с 4 ГБ ОЗУ (что приемлемо)
- ~ 160 с для AMD X2 4200+с 4Gb RAM (что слишком долго)
Есть ли способ ускорить загрузку изображения?Возможно использование gtk.Iconview здесь не оптимально?
Спасибо