मेरे पास एक छवि/पिक्सबफ है जिसे मैं gtk.DrawingArea में आकर्षित करना चाहता हूं और अक्सर ताज़ा करता हूं, इसलिए ब्लिटिंग ऑपरेशन तेज़ होना चाहिए।जीटीके + में एक छवि खींचने का सबसे तेज़ तरीका क्या है?
def __init__(self):
self.drawing_area = gtk.DrawingArea()
self.image = gtk.gdk.pixbuf_new_from_file("image.png")
def area_expose_cb(self, area, event):
self.drawing_area.window.draw_pixbuf(self.gc, self.image, 0, 0, x, y)
हालांकि बहुत धीमी गति से प्रदर्शन, संभावना जरूर प्रदर्शित करता है रंग प्रारूप में नहीं किया जा रहा की वजह से की ओर जाता है: यह आसान तरीका कर रहा।
मुझे कैरो के साथ कोई सफलता नहीं मिली, क्योंकि यह 24/32 बिट प्रारूपों तक सीमित है और इसमें 16 बिट प्रारूप नहीं है (FORMAT_RGB16_565 असमर्थित और बहिष्कृत है)।
Gtk + में चित्रों को चित्रित करने के लिए क्या विकल्प हैं?
यह प्रवाह झिलमिलाते नहीं है। मैं ओएलपीसी पर कुछ इंटरैक्टिव फुलस्क्रीन स्क्रॉलिंग/एनिमशन करने की कोशिश कर रहा हूं, जो शुरू करने के लिए बहुत तेज नहीं है और इसके शीर्ष पर एक बड़ी स्क्रीन है और यह 16 बिट में चलता है। एसडीएल में एक ही चीज़ करना बिना किसी समस्या के काम करता है। Gtk.Layout का उपयोग करना और स्क्रॉलिंग के लिए इसका उपयोग करना काफी तेज़ है, लेकिन gtk.DrawingArea (जैसा कि मैं बाद में अधिक प्रभाव जोड़ना चाहता हूं) पर ड्रैग करके स्क्रॉलिंग मैन्युअल रूप से कर रहा हूं पूरी तरह से अनुपयोगी धीमी है। – Grumbel