我有一个GTK绘图区域,我希望有一个图像显示作为它的背景,而其他东西可以在它上面绘制。
我的第一次尝试涉及到我只是拍摄图像,将其放入像素图,并在绘制其他对象之前绘制它。这导致对象背景完全覆盖我的背景图像。
现在我想我需要更改对象的pixmap的gtk.gdk.GC,所以它的背景颜色是透明的。这是我遇到问题的地方。我不知道如何设置gtk.gdk.Color的alpha。
如何设置gtk.gdk.Color的alpha? (或使颜色透明的任何其他方式)
如果这个想法似乎不太可行,请告诉我。我是GTK的新手。
答案 0 :(得分:2)
我不知道这是否对您有所帮助,但我最好的建议是使用 Cairo :一个开源2D图形库,为高级2D绘图提供跨平台支持。我认为这也是绘制2D图形的最简单方法 (我过去曾尝试过 GDK ,我觉得使用起来要复杂得多)。
在python中,您可以使用特定绑定Pycairo。 Here您可以通过简单的教程了解更多信息。
针对您的具体问题,请参阅有关images的更多信息 和trasparency。
trasparency的主要功能是:
有关如何管理图像和透明度的精彩摘要,请参阅在关于trasparency之前链接的同一页面中的反映图像。