Seite 1 von 1

pixbuf ist langsam

Verfasst: Donnerstag 4. Februar 2010, 13:55
von ska.ndal
hallo,

ich arbeite gerade mit iconview und füge dabei bilder per pixbuf ein. ich finde es extrem langsam. ich habe es eben mit 1500 bildern getestet und es hat schon mindestens 30min gedauert. gibt es nicht eine möglichkeit, wie ich schnell kleine bilder (80x80px) erstellen kann? und wie kann ich das am besten mit dem seitenverhältnis machen? ich habe jetzt immer mit Image die größe berechnet und dann selber runtergerechnet.

kann mir wer helfen? danke, ska.ndal

hier noch mein codeschnipsel zum einfügen von elementen in iconview

Code: Alles auswählen

def icon_add(self, id, uri):
    self.pixbuf = gtk.gdk.pixbuf_new_from_file(uri)
    img = Image.open(uri)
    (width, height) = img.size
    del img
    if width <= height:
      set_width = int(self.iconView_size * float(width) / height)
      set_height = self.iconView_size
    else:
      set_width = self.iconView_size
      set_height = int(self.iconView_size * float(height) / width)
    a = self.pixbuf.scale_simple(set_width, set_height, gtk.gdk.INTERP_BILINEAR)
    self.icon_model.append([id, a])

Verfasst: Donnerstag 4. Februar 2010, 22:09
von ska.ndal
hab jetzt gtk.gdk.pixbuf_new_from_file_at_size(uri, set_width, set_height) anstelle von pixbuf_new_from_file() und pixbuf_scale_simple() genommen und es funktioniert auch schneller. mal sehn ob das mich dann glücklich macht?!