首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何调整gtk.gdk.Pixmap的大小

如何调整gtk.gdk.Pixmap的大小
EN

Stack Overflow用户
提问于 2011-11-10 16:35:44
回答 2查看 603关注 0票数 0

我创建了一个gtk.gdk.Pixmap实例,并在上面绘制了一些东西。例如:

代码语言:javascript
复制
pixmap = gtk.gdk.Pixmap(widget.window,100,800)
pixmap.draw_rectangle(gc, True, 0, 0, 100, 800)
pixmap.draw_line(gc, 0, 0,100, 800)

如何调整Pixmap的大小?我看到的一种方法是使用gtk.gdk.Pixbuf.get_from_drawablePixmap复制到PixBuf中,然后调整Pixbuf的大小,然后将Pixbuf复制到Pixmap

有没有办法在不复制的情况下做到这一点?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-11 15:15:08

不幸的是,如果没有所有这些复制,这是不可能的。请注意,为了支持Cairo,GdkPixmap和GdkPixbuf被弃用。

票数 1
EN

Stack Overflow用户

发布于 2011-11-12 06:51:30

实际上,这些已经被弃用了。

更重要的是,GdkPixmap是一个服务器端资源--像素图的内容驻留在X服务器的内存中。当您执行get_from_drawable()时,您请求将这些内容传输到您的应用程序,这是非常昂贵的。

相反,创建一个Cairo图像表面,并在那里进行绘制。这是一个客户端资源,因此您不会得到性能损失。通过使用适当的变换将图像曲面绘制到另一个曲面上,可以缩放图像曲面。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8076759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档