Colors python gtk.gdk.Color change alpha

Colors python gtk.gdk.Color change alpha,colors,gtk,alpha,Colors,Gtk,Alpha,我正在使用GTK绘图区域显示圆。我通过绘制2个圆周率圆弧并用颜色填充它们来创建圆。我想给圆的颜色一个alpha。这样,当一个圆画在另一个圆的上面时,我就能看到下面的圆 有人有想法实现我想要的吗 也许我错过了一些在gtk.gdk.GC中有用的东西 谢谢,伊恩,请试试开罗。这是一个deom: #!/usr/bin/env python3 import cairo from gi.repository import Gtk import math class Demo(Gtk.Window):

我正在使用GTK绘图区域显示圆。我通过绘制2个圆周率圆弧并用颜色填充它们来创建圆。我想给圆的颜色一个alpha。这样,当一个圆画在另一个圆的上面时,我就能看到下面的圆

有人有想法实现我想要的吗

也许我错过了一些在gtk.gdk.GC中有用的东西


谢谢,伊恩,请试试开罗。这是一个deom:

#!/usr/bin/env python3

import cairo
from gi.repository import Gtk
import math

class Demo(Gtk.Window):

    def __init__(self):
        super(Demo, self).__init__()

        self.init_ui()

    def init_ui(self):
        darea = Gtk.DrawingArea()
        darea.connect('draw', self.on_draw)
        self.add(darea)

        self.set_title('Fill & stroke')
        self.resize(300, 150)
        self.set_position(Gtk.WindowPosition.CENTER)
        self.connect('delete-event', Gtk.main_quit)
        self.show_all()

    def on_draw(self, window, cr):
        cr.set_source_rgba(0.3, 0.4, 0.5, 0.5)
        cr.arc(60, 60, 40, 0, 2*math.pi)
        cr.fill()

        cr.set_source_rgba(0.5, 0.2, 0.7, 0.5)
        cr.arc(70, 60, 30, 0, 2*math.pi)
        cr.fill()


def main():
    app = Demo()
    Gtk.main()

if __name__ == '__main__':
    main()
下面是截图:

访问了解更多有关开罗的信息