Слияние gtk subpixbufs
В настоящее время я играю с gtk.pixbuf в Python. В API функция subpixbuf описывается как возвращение pixbuf, который делится данными с исходным pixbuf:
Метод subpixbuf() создает новый gtk.gdk.Pixbuf, который представляет подобласть pixbuf. Новый pixbuf делит свои пиксели с оригинальным pixbuf, поэтому запись в один из них влияет на оба.
Но...
Когда я пытаюсь разделить pixbuf в списке subpixbuf и назначить значение каждому элементу, оригинальный pixbuf остается прежним.
animation.subpixbuf=[]
animation.pixbuf.fill(self.LIGHT_SQ_COLOR)
for i in range(64) :
animation.subpixbuf += [animation.pixbuf.subpixbuf((7-i%8)*self.sq_width (i/8)*self.sq_width,w,w)]
animation.subpixbuf[i]=self.squares[63-i]
Любые идеи о том, как создать pixbuf из набора subpixbufs?
Благодарю.
1 ответ
Когда вы делаете animation.subpixbuf[i]=self.squares[63-i]
назначаешь subpixbuf[i]
в новый объект Pixbuf. Вы не меняете Pixbuf, ранее сохраненный в subpixbuf[i]
,
Чтобы сделать то, что вы хотите, вы должны взглянуть на copy_area
метод класса Pixbuf.