2013-05-30 64 views
0

我有一個GTK繪圖區域,我想要有一個圖像顯示器作爲它的背景,而其他東西可以繪製在它上面。GTK可繪製區域透明背景顏色

我的第一次嘗試就是讓我簡單地把圖像放入一個像素圖中,並在繪製其他對象之前繪製它。這導致了物體背景完全覆蓋了我的背景圖像。

現在我想我需要改變對象的像素圖的gtk.gdk.GC所以它的背景色是透明的。這是我遇到問題的地方。我不知道如何設置gtk.gdk.Color的alpha。

如何設置gtk.gdk.Color的alpha? (或任何其他方式使顏色透明)

如果這個想法似乎不太可行,請讓我知道。我對GTK很新。

+0

修正了它:發生了什麼是我使用的頂層對象填充整個繪圖區域的空白,即使對象本身很小。 爲了解決這個問題,我使用了我的第一次嘗試,而不是將繪製背景圖像繪製到繪圖區域上,我將其繪製到了像素映射本身。 – user2327814

回答

2

我不知道這是否可以幫助你,但是我最好的建議是使用開羅一個開源的2D圖形庫提供先進的2D繪圖跨平臺的支持。這也是繪製2D圖形的最簡單的方法,我認爲 (我過去試過GDK,我認爲它使用起來要棘手得多)。

在python中,你可以使用特定的綁定PycairoHere您可以通過簡單的教程瞭解更多信息。

對於您的特定問題,請參閱有關imagestrasparency的更多信息。

爲trasparency的主要功能有:

一個偉大的總結,學習如何管理圖像和透明度的例子反射圖像中在關於trasparency之前鏈接的同一頁。