我目前正在 python 中使用 gtk.pixbuf。在API中,subpixbuf函数被描述为返回一个与原始pixbuf共享数据的pixbuf:
The subpixbuf() method creates a new gtk.gdk.Pixbuf that represents a sub-region of the pixbuf. The new pixbuf shares its pixels with the original pixbuf, so writing to one affects both.
但是...
当我尝试将 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]
关于如何从一堆 subpixbuf 组成一个 pixbuf 有什么想法吗?
谢谢。
最佳答案
当您执行 animation.subpixbuf[i]=self.squares[63-i]
时,您将 subpixbuf[i]
分配给一个新的 Pixbuf 对象。您不会更改之前存储在 subpixbuf[i]
中的 Pixbuf。
要执行您想做的操作,您应该查看 Pixbuf 类的 copy_area
方法。
关于python - 合并 gtk subpixbuf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10543435/